!rCWNvpCTZHQkiRYUDE:matrix.org

Matrix.fi

427 Members
Keskustelua Matrix-protokollasta (matrix.org) ja siihen liittyvistä sovelluksista suomeksi. Suomi-space: #matrix-suomi:kapsi.fi99 Servers

Load older messages


SenderMessageTime
19 Jul 2024
@rss:maunium.netRSS

Uusi tuutti @matrixdotorg​:​lta:

Megabridges, Synapse cleaning, and a retreat. That and much more happened This Week In Matrix!

https://matrix.org/blog/2024/07/19/this-week-in-matrix-2024-07-19/

19:09:34
@tdb:tdb.fitdbTaas tämmönen hassu kryptattu viesti joka piti lukea Fluffyllä jotta se ilmesty Nhekoon näkyviin. Nää avaimethan menee jotenki clienttien välisinä viesteinä eikä huoneen eventteinä, eikös? Voiko olla et lähettäjän clientti jostain syystä lähettää sen väärälle miun clienteistä?21:22:43
20 Jul 2024
@vurpo:hacklab.fivurpo
In reply to @tdb:tdb.fi
Taas tämmönen hassu kryptattu viesti joka piti lukea Fluffyllä jotta se ilmesty Nhekoon näkyviin. Nää avaimethan menee jotenki clienttien välisinä viesteinä eikä huoneen eventteinä, eikös? Voiko olla et lähettäjän clientti jostain syystä lähettää sen väärälle miun clienteistä?
Ne avaimet menee erillisinä viesteinä lähettävältä laitteelta suoraan jokaiselle vastaanottavalle laitteelle erikseen
00:25:56
@vurpo:hacklab.fivurpoMutta jos joku sinun laitteista ei jostain syystä saanut sitä, se voi myös jälkeenpäin pyytää sitä toiselta laitteelta joka sai sen onnistuneesti00:26:28
@vurpo:hacklab.fivurpoeli tässä tapauksessa avain lähetettiin alun perin erikseen nhekolle ja fluffychatille, nheko jostain syystä ei saanut sitä, mutta pyysi sitä sitten fluffychatilta joka välitti sen edelleen00:28:12
@vurpo:hacklab.fivurpoClientti ei kuitenkaan voi vastaanottaa "väärälle" clientille lähetettyä to-device-viestiä00:28:39
@dataaja95:harrastenurkka.fiDataaja95Redacted or Malformed Event07:49:31
22 Jul 2024
@sl:envs.netSamLehMatrix aiheuttaa kyllä omat haasteensa käyttäjille. https://mementomori.social/@paxed/11282885116055174517:10:14
@olmari:hacklab.fiSami Olmari"en tykkää -> rinkirunkku?" 😂17:11:16
@sl:envs.netSamLeh
In reply to @olmari:hacklab.fi
"en tykkää -> rinkirunkku?" 😂
Siinä on usein omat etunsa, että joku plattari on tietyllä tavalla profiloitunut. Niin hyvässä kuin huonossakin toki.
17:20:07
24 Jul 2024
@dataaja95:harrastenurkka.fiDataaja95Ensimmäisen kerran näen kunnon spämmereitä matrixissa, floodasivat erään huoneen täyteen paskaa ja ainakin tuolla sai kivasti perus elementin jumiin06:02:30
@dataaja95:harrastenurkka.fiDataaja95Jouduin poistumaan huoneesta ennen kuin elementn lähti toimimaan, no jospa adminit olisivat sen verran hereillä että poistaisivat nuo spämmerin lähes 600 viestiä paskaa06:05:10
@jassu:kumma.juttu.asiaJassukoÄlä huoli… se niiden viestien postaminen tekee jumituksesta todennäköisesti vielä isomman koska sit joutuu käsittelemään sekä ne eventit, että redaction eventit. ;)06:34:58
@dataaja95:harrastenurkka.fiDataaja95
In reply to @jassu:kumma.juttu.asia
Älä huoli… se niiden viestien postaminen tekee jumituksesta todennäköisesti vielä isomman koska sit joutuu käsittelemään sekä ne eventit, että redaction eventit. ;)
ELi käsitelläänkö jokainen viesti erikseen ja sille vielä oma poistoeventtinsä, kiva kiva
07:31:10
@dataaja95:harrastenurkka.fiDataaja95Nyt näyttäisi toimivan jopa ok, kun liityin huoneeseen takaisin, helvetillistä jumitusta kyllä element koki liittymisessä, mutta nyt sentään pystyy käyttämään muita huoneita07:32:24
@jassu:kumma.juttu.asiaJassukoToki vaan niin kauan, kun ne eventit on relevantisti siinä osassa timelineä, jonka se clientti latailee näkyville. 09:27:10
@ptman:kapsi.fiPaul
In reply to @dataaja95:harrastenurkka.fi
ELi käsitelläänkö jokainen viesti erikseen ja sille vielä oma poistoeventtinsä, kiva kiva
Historian eheys, kuten gitissä
16:44:58
@flux:matrix.orgfluxeikös bulkkipoistoon tullut eventtiä, vai oliko se vain ehdotus?17:03:22
@telegram_575404822:maunium.netAminda.eu she/they ⚧︎ /matrix gc 17:08:17
@dataaja95:harrastenurkka.fiDataaja95Synapsen databaselle oli muistaakseni hyödyllistä ajella jotain huoltoeventtejä tasaisin väliajoin. Muistaakseni postgresqln vakuum ei poista databasesta turhaa roskaa jota synapse tuntuu sinne keräävän. Mitäs eventtejä tuolle kannattaisi ajella vai pitääkö tunkkailla tauluja ihan käsin17:30:47
@cos:hacklab.ficos Muistelen että jossain oli jotain skriptiä tms siivoushommiin. @olmari:hacklab.fi varmaan tietää mitä kannattaa tehdä. 17:32:34
@olmari:hacklab.fiSami OlmariPurge empty rooms, find-unreffed-states -tool, compress-state -tool, psql vacuum, full jos tarvitsee kovalevypinnaltakin vapaaksi tilan17:34:55
@olmari:hacklab.fiSami Olmarisiinäpä ne suunnilleen17:35:05
@dataaja95:harrastenurkka.fiDataaja95
In reply to @olmari:hacklab.fi
Purge empty rooms, find-unreffed-states -tool, compress-state -tool, psql vacuum, full jos tarvitsee kovalevypinnaltakin vapaaksi tilan
Oliko tuohon find-unreffed statesin suorittamiseen jotain skriptiä, huoneessa taisi joskus pyöriä sellainen
17:54:02
25 Jul 2024
@olmari:hacklab.fiSami Olmari
In reply to @dataaja95:harrastenurkka.fi
Oliko tuohon find-unreffed statesin suorittamiseen jotain skriptiä, huoneessa taisi joskus pyöriä sellainen
Noo kyl jokaiseen joku loitsu löytyy...
17:31:18
@olmari:hacklab.fiSami Olmari

Purge empty rooms

#!/bin/bash

TOKEN=yep
TOPURGE=$(curl -s -X GET --header "Authorization: Bearer $TOKEN" --header "Content-Type: application/json" --data-binary '{}' 'http://localhost:8008/_synapse/admin/v1/rooms?limit=100000'|jq --raw-output '.rooms[] | select(.joined_local_members == 0) | .room_id')

for f in $TOPURGE
do
  echo "Processing $f room..."
  curl -w "\n\nResponse code: %{response_code}\n\n" -s \
    -X DELETE \
    --header "Authorization: Bearer $TOKEN" \
    --header "Content-Type: application/json" \
    --data-binary \
    '{}' \
  'http://localhost:8008/_synapse/admin/v1/rooms/'"$f"''
done
echo "done"

Find unreffed states menee melko lailla käsin GH readme:n mukaan, joku saa toki koodata automaattiseman skriptin..

Compress state olis "moderni" automaattiversio jonka voi ajastaa vaik kerran päiväs tekemään vähän, itte oon ajanu manuaaliversiota koska... oon ajanu...

#!/bin/bash

stty -echoctl # Hide ^C

# User defined variables
ROOM_LIMIT=1000000 # How many rooms to list once, no key for "all", so set it absurdly high
WORK_DIR=tmp
ACCESSTOKEN=also_yep
PSQLADDRESS="postgresql:///synapse?user=matrix-synapse&host=/var/run/postgresql"

sigint_trap () {
    tput setaf 1
    echo "SIGINT caught"
    tput sgr0
    return 2
}

function create_work_dirs () {
  mkdir -p ${WORK_DIR}/new_states || { echo "Failed to create working directories!"; return 1; }
}

function generate_room_list () {
  echo "Generating room list"
  curl --silent \
    --request GET \
    --header "Authorization: Bearer ${ACCESSTOKEN}" \
    --header "Content-Type: application/json" \
  'http://localhost:8008/_synapse/admin/v1/rooms?limit='"${ROOM_LIMIT}"''|jq -r '.rooms[] | .room_id'>${WORK_DIR}/roomlist.txt || { echo "Failed to generate room list!"; return 1; }
}

function compress_rooms () {
  echo "Compressing rooms"
  for ROOM in $(cat ${WORK_DIR}/roomlist.txt)
  do
    echo "Processing room $ROOM"
    ionice -c 3 nice -n 20 ./rust-synapse-compress-state/target/debug/synapse_compress_state -t -c -o ${WORK_DIR}/new_states/${ROOM} -p ${PSQLADDRESS} -r "${ROOM}" || { echo "Failed to compress room $ROOM"; return 1; }
  done
}

function cleanup () {
  echo "Cleaning up"
  rm --recursive --force ${WORK_DIR} || { echo "Failed to clean up working directories!"; return 1; }
}

# Main program
trap 'sigint_trap' SIGINT
create_work_dirs || { cleanup; exit 1;}
generate_room_list || { cleanup; exit 1;}
compress_rooms || { cleanup; exit 1;}
cleanup || exit 1
echo "Finished successfully"
17:35:18
@dataaja95:harrastenurkka.fiDataaja95
In reply to @olmari:hacklab.fi

Purge empty rooms

#!/bin/bash

TOKEN=yep
TOPURGE=$(curl -s -X GET --header "Authorization: Bearer $TOKEN" --header "Content-Type: application/json" --data-binary '{}' 'http://localhost:8008/_synapse/admin/v1/rooms?limit=100000'|jq --raw-output '.rooms[] | select(.joined_local_members == 0) | .room_id')

for f in $TOPURGE
do
  echo "Processing $f room..."
  curl -w "\n\nResponse code: %{response_code}\n\n" -s \
    -X DELETE \
    --header "Authorization: Bearer $TOKEN" \
    --header "Content-Type: application/json" \
    --data-binary \
    '{}' \
  'http://localhost:8008/_synapse/admin/v1/rooms/'"$f"''
done
echo "done"

Find unreffed states menee melko lailla käsin GH readme:n mukaan, joku saa toki koodata automaattiseman skriptin..

Compress state olis "moderni" automaattiversio jonka voi ajastaa vaik kerran päiväs tekemään vähän, itte oon ajanu manuaaliversiota koska... oon ajanu...

#!/bin/bash

stty -echoctl # Hide ^C

# User defined variables
ROOM_LIMIT=1000000 # How many rooms to list once, no key for "all", so set it absurdly high
WORK_DIR=tmp
ACCESSTOKEN=also_yep
PSQLADDRESS="postgresql:///synapse?user=matrix-synapse&host=/var/run/postgresql"

sigint_trap () {
    tput setaf 1
    echo "SIGINT caught"
    tput sgr0
    return 2
}

function create_work_dirs () {
  mkdir -p ${WORK_DIR}/new_states || { echo "Failed to create working directories!"; return 1; }
}

function generate_room_list () {
  echo "Generating room list"
  curl --silent \
    --request GET \
    --header "Authorization: Bearer ${ACCESSTOKEN}" \
    --header "Content-Type: application/json" \
  'http://localhost:8008/_synapse/admin/v1/rooms?limit='"${ROOM_LIMIT}"''|jq -r '.rooms[] | .room_id'>${WORK_DIR}/roomlist.txt || { echo "Failed to generate room list!"; return 1; }
}

function compress_rooms () {
  echo "Compressing rooms"
  for ROOM in $(cat ${WORK_DIR}/roomlist.txt)
  do
    echo "Processing room $ROOM"
    ionice -c 3 nice -n 20 ./rust-synapse-compress-state/target/debug/synapse_compress_state -t -c -o ${WORK_DIR}/new_states/${ROOM} -p ${PSQLADDRESS} -r "${ROOM}" || { echo "Failed to compress room $ROOM"; return 1; }
  done
}

function cleanup () {
  echo "Cleaning up"
  rm --recursive --force ${WORK_DIR} || { echo "Failed to clean up working directories!"; return 1; }
}

# Main program
trap 'sigint_trap' SIGINT
create_work_dirs || { cleanup; exit 1;}
generate_room_list || { cleanup; exit 1;}
compress_rooms || { cleanup; exit 1;}
cleanup || exit 1
echo "Finished successfully"
Meikällä synapse pyörii dockerissa, joten pitää ehkä hieman säätää tuota skriptiä, mutta eiköhnä tuo lähde toimimaan
18:07:13
@olmari:hacklab.fiSami OlmariNiin, no kunhan tommonen sunnuntai-skripti mitä joskus tehny jne18:07:52
26 Jul 2024
@rss:maunium.netRSS

New post in Matrix.org: This Week in Matrix 2024-07-26

19:40:58
@rss:maunium.netRSS

Uusi tuutti @matrixdotorg​:​lta:

The Matrix Conference programme revealed, Circles going to the community, and bots updates.

That and more happened This Week in Matrix!

https://matrix.org/blog/2024/07/26/this-week-in-matrix-2024-07-26/

19:41:04

There are no newer messages yet.


Back to Room ListRoom Version: 5