ページ

title

告発\金沢地方検察庁\最高検察庁\法務省\石川県警察御中
弁護士と裁判官が共同で確定させた傷害・準強姦被告事件判決の再捜査要請に係る石川県警察珠洲警察署提出書面の情報公開

殺人未遂事件幇助の被告訴人: 木梨松嗣弁護士(金沢弁護士会)、岡田進弁護士(金沢弁護士会)、長谷川紘之弁護士(金沢弁護士会)、若杉幸平弁護士(金沢弁護士会)
名誉毀損罪の被告訴人: モトケンこと矢部善朗弁護士(京都弁護士会)、小倉秀夫弁護士(東京弁護士会)
市場急配センター株式会社 石川県金沢市駅西本町5丁目10番20所在
作成管理者: 石川県鳳珠郡能登町字宇出津 廣野秀樹
金沢地方検察庁御中

2018年5月4日金曜日

2018-05-04-124341_データベースの問題を発見、後から追加された重複ツイート1932件を削除で対処

---
layout: post
title: "データベースの問題を発見、後から追加された重複ツイート1932件を削除で対処"
date: 2018-05-04 12:43:41 +0900
categories: お知らせ パソコン管理
tags: データベース
---

 データベースにツイートを登録するスクリプトで事前の重複チェックが機能していないことを発見しました。Ubuntu1804に移行してからの問題だと思いますが、なぜかローカルの変数名に@がついていました。一括置換した際に間違って変換されたものと考えられます。

 次のように対処しました。


delete from tw_user_tweet where id not in (select min_id from (select min(t1.id) as min_id from tw_user_tweet as t1 group by t1.tw_url) as t2);

 同じURLのツイートの重複がなくなったことは、コマンドラインから次のように確認しました。


% mysql -u root benngosi_twitter -e 'select tw_url from tw_user_tweet group by tw_url HAVING count(*) >= 2\G'

* ツイート%s_hirono(非常上告-最高検察庁御中_ツイッター)%2018/05/04 13:00%<https://twitter.com/s_hirono/status/992252524244561920>
{% tweet 992252524244561920 %}
2018-04-30-114006_北朝鮮の核開発を阻止しようとするのは批判されるべきことなのかな?.jpg https://t.co/L0ws6t9cwx


 上記のツイートにあるスクリーンショットがUbuntu1804に移行して初めに記録したスクリーンショットのファイルになります。

 fstabに間違ってルートのパーティションのUUIDを登録してしまい。remountまで出来なくなったので、ほぼほぼアプリのインストールと設定が終わった段階で再インストールするアクシデントもありました。

 夜の22時ぐらいに復旧を断念したように憶えていますので、それが4月29日のことだと思います。朝方に掛けて再インストールを行い、4月30日の午前11時ころには、アプリのインストールと設定はほぼほぼ終わっていたと思いますが、前後にスクリプトの不具合を多く発見しました。

 主な原因は、Ubuntu1710で2.3だったRubyのバージョンがUbuntu1804では2.5になっていたのです。これでデータベース関係のライブラリーが使えなくなって、別のものに差し替えたのですが、そこで絵文字を含む文字コードの問題が起こったのです。

 調べて解決するのに時間が掛かりましたが、全部で3日ぐらいのことではなかったかと思います。寝る時間も少しでぶっ通しでやりました。スクリプトの数は多く、修正点も多かったです。よく使うスクリプトは修正済みと思っていたのですが、肝心の登録用のものに不具合が出来ていました。

 具体的な影響は、4月30日以降に、データベースから抽出したまとめ記事に、重複したツイートが含まれている可能性が高いことです。現在時刻は2018年13時24分ですが、これ以降に作成・投稿するまとめ記事には重複は発生しないはずです。

 ばたばたしていたので自身の備忘録としても書いておきました。


0 件のコメント:

コメントを投稿