ActivityPubの投稿削除

ActivityPubの投稿を削除するには2つ必要で。
・自分んち、ローカルは
→データベースから該当の投稿を削除する。
・他所んち、リモートには
→「Delete」のActivityをリクエストする。
今回のネタはこの2つ。
1)なんでautoincrementを設定してなかったんだ!?
2)Mastodon系とMisskey系で削除したNoteのIDの扱いが違っていた?

この投稿のうち、真ん中の2つ「6453」と「6454」は一度削除後に再投稿したもの
・一度データベースから削除
・DeleteのActivityをリモートにリクエスト
・削除されていることを確認して
・削除後に新たに別の内容を投稿したもの
ローカルから消すために、データベースからの削除はスグできる。
リモートには、対象の投稿はもう「墓石」です、というのを「Delete」のActivityに入れてリクエストする。
{「投稿を削除する::On Golden Pond」
"id":"https://tokoroten.doncha.net/t2aki/items/03881-20250208",
"url":"https://tokoroten.doncha.net/t2aki/items/03881-20250208",
"type":"Tombstone"
}
https://www.doncha.net/activitypub/activitypub007.html
お相手は削除のリクエストが飛んできたのを見て、対象のNoteは墓の下になったということで、タイムラインからも削除する。
そのIDはもう使えない。
削除後に新しく別のものを投稿すると
データベース的には、primarykeyにautoincrementを設定してないもんだから、IDの最大値を使う。
つまり、一度使用した・削除されたIDをまた使うことがある(IDの使い回しなどあってはいけない自業自得案件)
削除したIDを使い回して新たに投稿
mastodon.social

misskey.io

そもそも、IDの使い回しなどあってはいけない、というのが大前提なので、わたしのポカなんだけど。
mastodonは削除IDの復活はない、misskeyは削除IDを墓の下から復活する。
同じIDの使い回しというと「Update」(投稿の編集更新)があるけど、これもサーバーによって対応がビミョーに違ってた、かなあ。
IDの使い回しなどあってはなりません(教訓
SQLiteはAlterなんちゃらでautoincrementを後付けできない。
改めてテーブルを作って、そこに既存データをコピーすることになる…ので、いろいろ危険だなあ。これは「運用でカバー」という腐った対応にしておこう。そのためのメモだ。
[12/10 20:30:37] 追記
言い訳をしておくと。
mastodonの仕様は把握していた。miskkeyが意外だった。
autoincrementをつけるかどうかは、データベースを作る時にちょっと迷った。
投稿作成フローで、うちはまず「下書き」状態でデータベースに登録。この時点でIDがふられる。下書きを確認した後、問題がなさそうだったらリモートに配送する。
ということは、実際に配送に至らなかった投稿でもIDを消費してしまう。これを嫌ってautoincrementを見送ったという経緯。配送IDとか別建てにしておけば良かったんだろうけど…手抜きしちゃったなあ。
12月だった

もう12月。2010年も終わりだ。
そろそろ振り返りネタもイケんだろ、と。
今年のマイベストは、宮部みゆき「孤宿の人」、次点に古処誠二「アンフィニッシュト」。翻訳物部門では、ポール・アンダースン「折れた魔剣」。再読にも泣けてしまったで賞には、ボブ・ショウ「去りにし日々の光」。
花村萬月の王国記や、フリッツ・ライバーのファファード&グレイマウザー、上橋菜穂子の守り人など、去年に引き続き読んでるシリーズものもハズレはなかった。夢枕獏の魔獣狩りシリーズも33年かけてようやく完結(ちょっと急ぎ足でキャラが死んじゃったけど)
そりゃないだろ、と思ったのは5冊もなかったんで、まずまずの読書年間だった…じゃなく、今年はtwitterなんぞにうつつを抜かしてたり、ダウンロード販売サイトを作ってたりで、今日時点でまだ63冊しか読めていない。読んだ本の数だけ(フィクションのことを「本」という)人間てのは上の階梯に昇れるのだ。精進しなきゃいけない。
年末も土壇場、12月になって、yahooがgoogleと同じ検索結果を返すようになって、あれこれ右往左往。てなあ、しょせん一企業の腹づもりサジ加減ひとつのところで、これが正しいなんてことはないのに、なんで断定断言口調なのか理解に苦しむ。正解が見えない(誤解のないようつけ足すけど、わたしも素人なりにSEO、WEBの知識は仕入れてるつもり)ところを基盤に手探り状態でいくしかないんだけど。計画の立てようもない。
検索エンジン頼みで右往左往して負荷がかかるぐらいなら、リピーターを大事にするとか、一見さんに必ず2ページ目3ページ目を見たくなるようなサイト作りを考えるとか、たぶん、そちらに注力するほうが効果が上がるような気がする。
年内最後のイベントはコミケだな。楽しみ。
[更新]2013-02-18 22:24:40
adwordsの反応の早さに驚く

今日はショップサイトでの作業が少なかったんで、ほぼadwordsだ。コンテンツネットワークはクリック率こそアレだけど、表示数は相変わらずスゲーのひとこと。なので検索側を頑張ってみるか、と。フレーズ一致で登録した単語をすべて部分一致に変更。yahooのカテゴリからパクれそうな(使えそうな)関連単語を拾って追加。ちょろっと調整しただけで昨日の表示数の3倍ほどになって驚き。でも、あまりコンバージョンには関係なさそうな単語も増えてしまう。こんな単語で探してるひとにきて欲しい。と思っても、サイトで表示している商品のメタ情報にその単語は含まれていなくて、ぐーぐる様に、コンテンツと合ってねえからスコア下げるかんな、ゴルァ、と言われてしまう。なもんで、さりげなくキーワードをちりばめられるコンテナをでっちあげて様子見だ。あざといことをやっても意味がない。書店のPopみたいなものにしてみるか。
しかし、ほんと反応が早い。
読書snsの方は昨晩、掲示板の書き込み系を移植。しんどい書き込み系はどうにかメドがつきそう。って、まったくチェックしてないので、スクリプトを書き上げてからのチェックが大変だなよあ。
と、いちんちディスプレイを見てるからか、疲れ目っぽい。目薬を使ってしのいでるが、ポリフェノール摂取には赤ワイン…週末まで我慢。
[更新]2026-02-04 09:33:37
入れ替え作業中…

今日は北千住とか銀座有楽町とか。さすがに銀座は絵になるところが多いなぁ。おもちゃプラモデルカメラでパシャパシャ。
北千住のブックオフで「新・魔獣狩り1」を55円で購入。
upgradeしたばかりのLibretto。パッケージも新しいものに入れ替えた方がよさそうなので、とりあえず、今はいってるものはほぼ全部delete。
apache postgresql emacs が入ってhttpサーバーになってくれればいいか、と。…予想外にてこずりそうだ。ほんとだったら4.11から5.4あたりにあげて、クリーンインストールすべきなんだろうけど、それはそれでまたホネだろうし。
地元の飲み放題食い放題で羊肉と日本酒を暴飲暴食。ううううむ。
[更新]2026-02-04 11:01:20
今日もなしの一日に


白菜煮があるし、適当になんぞ食って終了するか。なんか一昨日あたりからショボイなぁ。
[更新]2026-02-04 13:56:25

