The FidoBase Project ...
[30.09.2009] Can be the FidoBase Project be part of the Fido-History-Project ? |
||
Project Team Members:

| fieldname | data type | Not NULL | Auto Inc | Flags | default value | comments |
|---|---|---|---|---|---|---|
| id | INTEGER | ![]() |
![]() |
No Unsigned, No ZeroFill | NULL | |
| ftscdate | VARCHAR(20) | ![]() |
No Binary | |||
| datetime | TIMESTAMP | ![]() |
CURRENT_TIME | |||
| folder | VARCHAR(72) | ![]() |
No Binary | |||
| fromnode | VARCHAR(72) | ![]() |
No Binary | |||
| tonode | varchar(72) | ![]() |
No Binary | |||
| fromname | varchar(36) | ![]() |
No Binary | |||
| toname | varchar(36) | ![]() |
No Binary | |||
| subject | varchar(72) | ![]() |
No Binary | |||
| attrib | smallint(5) | ![]() |
Unsigned, No ZeroFill | 0 | ||
| msgid | varchar(72) | ![]() |
Not Binary | |||
| replyid | varchar(72) | ![]() |
Not Binary | |||
| origin | varchar(72) | ![]() |
Not Binary | |||
| path | varchar(255) | ![]() |
Not Binary | |||
| local | char(1) | ![]() |
Not Binary, Not ASCII, Not UNIC | Y | ||
| rcvd | char(1) | ![]() |
Not Binary, Not ASCII, Not UNIC | N | ||
| sent | char(1) | ![]() |
Not Binary, Not ASCII, Not UNIC | N | ||
| kludges | mediumblob | NULL | ||||
| body | mediumblob | NULL | ||||
| seenby | mediumblob | NULL | ||||
| datewritten | datetime | NULL | ||||
| Uplink | int(10) | Unsigned, Not ZeroFill | 0 |
CREATE TABLE `echo_0` ( `id` int(11) NOT NULL auto_increment, `ftscdate` varchar(20) NOT NULL default '', `datetime` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `folder` varchar(72) NOT NULL default '', `fromnode` varchar(72) NOT NULL default '', `tonode` varchar(72) NOT NULL default '', `fromname` varchar(36) NOT NULL default '', `toname` varchar(36) NOT NULL default '', `subject` varchar(72) NOT NULL default '', `attrib` smallint(5) unsigned NOT NULL default '0', `msgid` varchar(72) NOT NULL default '', `replyid` varchar(72) NOT NULL default '', `origin` varchar(72) NOT NULL default '', `path` varchar(255) NOT NULL default '', `local` char(1) NOT NULL default 'Y', `rcvd` char(1) NOT NULL default 'N', `sent` char(1) NOT NULL default 'N', `kludges` mediumblob, `body` mediumblob, `seenby` mediumblob, `datewritten` datetime default NULL, `Uplink` int(10) unsigned default '0', PRIMARY KEY (`id`), UNIQUE KEY `dupecheck` (`folder`,`ftscdate`,`msgid`,`subject`), KEY `Export` (`datetime`,`folder`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Table: DLSTAT | |||||||
Downlink 1 | Downlink 2 | Downlink 3 | . | . | . | Downlink n | |
Echo 1 | HWM.1.1 | -.- | -.- | HWM.n.1 | |||
Echo 2 | HWM.1.2 | HWM.2.2 | HWM.3.2 | -.- | |||
Echo 3 | -.- | -.- | HWM.3.3 | HWM.n.3 | |||
. | |||||||
. | |||||||
. | |||||||
Echo n | -.- | HWM.2.n | -.- | -.- | |||
Table: DLSTAT | ||
Link | Link Stat | |
Echo 1 | LinkID 1 | HWM.1.1 |
Echo 2 | LinkID 1 | HWM.1.2 |
Echo 2 | LinkID 2 | HWM.2.2 |
Echo 2 | LinkID 3 | HWM.3.2 |
Echo 3 | LinkID 3 | HWM.3.3 |
Echo 3 | LinkID n | HWM.n.3 |
Echo n | LinkID 2 | HWM.2.n |
Table: SESSPWD | |||
| Link ID | (Default Link) | AKA | Pwd |
LinkID 1 | Link 1 | Aka 1 | Pwd 1 |
LinkID 2 | Link 2 | Aka 2 | Pwd 2 |
LinkID 3 | Link 3 | Aka 3 | Pwd 3 |
LinkID n | Link n | Aka n | Pwd n |











[-----------Mails-----------] [DL1,DL2,...,DLn] Table (?), Folder (?), MailID, DownlinkID, State
for i = 1 to n-Updates
for j = 1 to n-Downlinks
Dest = Downlinks[j]
if Dest != MyNodeID
case Action==AddMail
Queue-OUT(From:MyNodeID,To:Dest,Action:AddMail,Content:add(id,ftscdate,datetime,folder,...))
case Action==UpdateTemp
Queue-OUT(From:MyNodeID,To:Dest,Action:UpdateTemp,Content:update(MailID,DL#,state))
endif
next
next
ClusterNodesID, AKA, Name
DownlinkID, AKA, Name, SessionPwd
for i = 1 to n-Updates
for j = 1 to n-ClusterNodes
Dest = ClusterNodes[j]
if Dest != MyNodeID
case Action==AddMail
Queue-OUT(From:MyNodeID,To:Dest,Action:AddMail,Content:add(id,ftscdate,datetime,folder,...))
case Action==UpdateTemp
Queue-OUT(From:MyNodeID,To:Dest,Action:UpdateTemp,Content:update(MailID,DL#,state))
case Action==AddClusterNode
Queue-OUT(From:MyNodeID,To:Dest,Action:AddClusterNode,Content:add(ClusterNodeID,AKA,Name))
case Action==AddDownlink
Queue-OUT(From:MyNodeID,To:Dest,Action:AddDownlink,Content:add(DownlinkID,AKA,Name,SessionPwd))
case Action==DelClusterNode
Queue-OUT(From:MyNodeID,To:Dest,Action:DelClusterNode,Content:del(ClusterNodeID))
case Action==DelDownlink
Queue-OUT(From:MyNodeID,To:Dest,Action:DelDownlink,Content:del(DownlinkID))
endif
next
next

PATHS: Maintain and report PATHS a message takes within an echo.
Copyright (C) 1991-1992, Graham J Stair. All rights reserved.
Release 2a for DOS (10th January 1993, 21:21) {-? for help}
Checked on : Wed Oct 07 18:04:20 2009
Number of nodes : 23
Number of messages : 344xx
Earliest message : Nov 27 2008
Latest message : Feb 05 2009 22:28:16 2106
2:244/1120 (6 of -31120)
+->2:244/1120.2 (784 of 784)
|
+->2:240/4030 (4983 of 4983)
|
+->2:244/1120.6 (2066 of 2066)
|
+->2:244/1117 (1371 of 1371)
|
+->2:240/2188.262 (9401 of 9401)
|
+->2:2443/1313 (0 of 5490) -------+
| +->2:280/5003 (19 of 2988) |
| | +->2:280/5003.4 (2967 of 2967) |
| | +->2:280/5555 (2 of 2) |
| | | |
| | +->2:280/5004 (0)
| | |
| +->2432/200 (0 of 168) -----+ |
| | +->2:2448/44 (0 of 167) | |
| | | +->2:2448/44.23 (167 of 167) | |
| | | V V
| | +->2:2432/390 (1 of 1) ? ?
| | | (+->2:240/2188 (0 of 9401) ???)
| | ???
| | | -------> 2:240/5832 ?
| | | -------> 2:2437/33 ?
| | SeenBy
| | +->2:24/905
| | +->2:240/2188
| | +->2:240/5778
| | +->2:244/1200
| | +->2:249/3110
| | +->2:313/41
| | +->2:423/81
| | +->2:2411/413
| | +->2:2432/0
| | +->2:2432/201
| | +->2:2432/215
| | +->2:2432/300
| | +->2:2433/401
| | +->2:2437/40
| | +->2:2443/1311
| | +->2:2452/250
| |
| |
| +->2:2443/1313.13 (1139 of 1139)
| |
| +->2:2443/1313.666 (6 of 6)
| |
| +->2:2443/1313.1168 (29 of 29)
| |
| +->1/2443 (14 of 14)
| |
| +->2:2443/1313.80 (4 of 4)
| |
| +->2:2443/1313.87 (3 of 3)
| |
| ???
|
+->2:244/1120.21 (9868 of 9868)
|
+->2:244/1120.23 (1586 of 1586)
+---------------------------------------------------------------------+
Average msg hops: 1.9 Maximum msg hops: 4
+---------------------------------------------------------------------+
2:244/1120 (6 of -31120)
+->2:244/1120.2 (784 of 784)
|
+->2:240/4030 (4983 of 4983)
|
+->2:244/1120.6 (2066 of 2066)
|
+->2:244/1117 (1371 of 1371)
|
+->2:240/2188.262 (9401 of 9401)
|
+->2:280/5003 (19 of 2988)
| +->2:280/5003.4 (2967 of 2967)
| +->2:280/5555 (2 of 2)
| |
| +->2:280/5004 (0)
|
+->2:244/1120.21 (9868 of 9868)
|
+->2:244/1120.23 (1586 of 1586)
:
[broken link]
:
+->2:2443/1313 (0 of 5490) -------+
: |
[broken link] |
: |
+->2432/200 (0 of 168) -----+ |
| +->2:2448/44 (0 of 167) | |
| | +->2:2448/44.23 (167 of 167) | |
| | V V
| +->2:2432/390 (1 of 1) ? ?
| | (+->2:240/2188 (0 of 9401) ???)
| ???
| | -------> 2:240/5832 ?
| | -------> 2:2437/33 ?
| SeenBy
| +->2:24/905
| +->2:240/2188
| +->2:240/5778
| +->2:244/1200
| +->2:249/3110
| +->2:313/41
| +->2:423/81
| +->2:2411/413
| +->2:2432/0
| +->2:2432/201
| +->2:2432/215
| +->2:2432/300
| +->2:2433/401
| +->2:2437/40
| +->2:2443/1311
| +->2:2452/250
|
|
+->2:2443/1313.13 (1139 of 1139)
|
+->2:2443/1313.666 (6 of 6)
|
+->2:2443/1313.1168 (29 of 29)
|
+->1/2443 (14 of 14)
|
+->2:2443/1313.80 (4 of 4)
|
+->2:2443/1313.87 (3 of 3)
|
???
+---------------------------------------------------------------------+
PATHS: Maintain and report PATHS a message takes within an echo.
Copyright (C) 1991-1992, Graham J Stair. All rights reserved.
Release 2a for DOS (10th January 1993, 21:21) {-? for help}
Checked on : Wed Apr 10
2:244/1120 (6 of -31120)
+->2:244/1120.2 (784 of 784)
|
+->2:240/4030 (4983 of 4983)
|
+->2:244/1120.6 (2066 of 2066)
|
+->2:244/1117 (1371 of 1371)
|
+->2:240/2188.262 (9401 of 9401)
|
+->2:280/5003 (19 of 2988)
| +->2:280/5003.4 (2967 of 2967)
| +->2:280/5003.666
| +->2:280/5555 (2 of 2)
| |
| +->2:280/5004 (0)
|
+->2:2448/44 (0 of 167)
| +->2:2448/44.23 (167 of 167)
|
+->2:244/1120.21 (9868 of 9868)
|
+->2:244/1120.23 (1586 of 1586)
|
+->2:244/1200
| |
| +->2:2432/200 (0 of 168)
| |
| +->2:2432/390 (1 of 1)
| |
| ???
| |
| |
| SeenBy
| +->2:24/905
| +->2:240/2188
| +->2:240/5778
| +->2:249/3110
| +->2:313/41
| +->2:423/81
| +->2:2411/413
| +->2:2432/0
| +->2:2432/201
| +->2:2432/215
| +->2:2432/300
| +->2:2433/401
| +->2:2437/40
| +->2:2443/1311
| +->2:2452/250
|
:
[broken link]
:
+->2:2443/1313 (0 of 5490) -------+
: (+->2:240/2188 (0 of 9401) ???)
[broken link]
| -------> 2:240/5832 ?
| -------> 2:2437/33 ?
+->2:2443/1313.13 (1139 of 1139)
|
+->2:2443/1313.666 (6 of 6)
|
+->2:2443/1313.1168 (29 of 29)
|
+->1/2443 (14 of 14)
|
+->2:2443/1313.80 (4 of 4)
|
+->2:2443/1313.87 (3 of 3)
|
???
+---------------------------------------------------------------------+
|
During my exercises last year, while merging and cleaning
the databases from Dirk and Knut, i found that for the
old dataset, the inclusion of ftscdate in the dupcheck key resulted in more dupes in the database. If I recall correctly, the differences were larger as the modulo 2 seconds. For the size of the merge, using only folder, msgid and subject pooved to be sufficient. Athough it will probably not happen anymore, I found that the msgid of messages where this attribute is missing, can reliably be generated before inclusion into the DB. If for purist reasons this atrribute should not be added to the original message, the special attribute will do. |
|
Each table has an unique btree index 'dupecheck' folder + ftscdate(18) + msgid + subject |
|
"select * from fidobase2.echo_".substr($folder,0,1)." where folder='".$folder."' and ftscdate like '".substr($ftscdate,0,18)."%' and msgid='".$msgid."' and subject='".$subject."';" |
| Archiv | |||
| Imported | Skipped (Dupes) | Errors | |
| a01 | 602 | 17487 | 0 |
| a02 | 760 | 4320 | 0 |
| a03 | 1447 | 6430 | 0 |
| a04 | 1966 | 7201 | 0 |
| a05 | 830 | 8360 | 0 |
| a06 | 523 | 9046 | 0 |
| a07 | 241 | 9349 | 0 |
| a08 | 27 | 8486 | 0 |
| a09 | 9 | 9832 | 0 |
| a10 | 26 | 9974 | 0 |
| a11 | 0 | 6052 | 0 |
| a12 | 136 | 9364 | 0 |
| a13 | 4561 | 4439 | 0 |
| a14 | 7000 | 0 | 0 |
| BBCON96 | 6227 | 0 | 0 |
| a13a | 70 | 4549 | 0 |
| a13b | 25 | 4353 | 0 |
| a13c | 0 | 12 | 0 |
|
"select * from fidobase2.echo_".substr($folder,0,1)." where folder='".$folder."' and ftscdate like '".substr($ftscdate,0,17+($CROSSPOINTIMPORT?0:1))."%' and msgid='".$msgid."' and subject='".$subject."';" |
# 04:12:18 Import: path F:/ECHOBASE/BBCON96/a01/ # 04:14:20 Mail content mismatch MsgId found: 78.msg # 04:14:20 - FTSCDATE expected: 28 May 06 23:08:16 # 04:14:20 - FTSCDATE found : 28 May 06 23:08:17 # 04:14:20 - SUBJECT RE difference in db: Re: nach der Con ist vor der Con # 04:16:44 Mail content mismatch MsgId found: 7464.msg # 04:16:44 - SUBJECT expected: nummern # 04:16:44 - SUBJECT found : Re^2: nummern # 04:16:46 Mail content mismatch MsgId found: 7532.msg # 04:16:46 - SUBJECT expected: nummern # 04:16:46 - SUBJECT found : Re^4: nummern # 04:16:46 dupe found: 7532.msg (MsgID) # 04:16:46 Mail content mismatch MsgId found: 7538.msg # 04:16:46 - SUBJECT RE difference in db: Re: Re^4: nummern # 04:16:46 dupe found: 7538.msg (MsgID) # 04:23:12 FTSCDATE differences: 1 # 04:23:12 SUBJECT differences: 2 # 04:23:12 SUBJECT 'RE:' differences: 557 # 04:23:12 SUBJECT 'RE:' differences source MSG: 0 # 04:23:12 SUBJECT 'RE:' differences source DB : 557 # 04:23:12 Messages imported: 0, skipped: 18089, error: 0 --------------------------------- # 04:23:13 Import: path F:/ECHOBASE/BBCON96/a02/ # 04:27:27 SUBJECT 'RE:' differences: 760 # 04:27:27 SUBJECT 'RE:' differences source MSG: 0 # 04:27:27 SUBJECT 'RE:' differences source DB : 760 # 04:27:27 Messages imported: 0, skipped: 5080, error: 0 --------------------------------- # 04:27:28 Import: path F:/ECHOBASE/BBCON96/a03/ # 04:34:05 Mail content mismatch MsgId found: 7805.msg # 04:34:05 - SUBJECT expected: 51ø13\'35,57" N 6ø46\'19,38" O # 04:34:05 - SUBJECT found : 51°13'35,57" N 6°46'19,38" O # 04:34:06 SUBJECT differences: 1 # 04:34:06 SUBJECT 'RE:' differences: 1445 # 04:34:06 SUBJECT 'RE:' differences source MSG: 0 # 04:34:06 SUBJECT 'RE:' differences source DB : 1445 # 04:34:06 Messages imported: 0, skipped: 7877, error: 0 # 04:34:06 FB2IMP finished. --------------------------------- # 04:34:07 Import: path F:/ECHOBASE/BBCON96/a04/ # 04:42:55 SUBJECT 'RE:' differences: 1966 # 04:42:55 SUBJECT 'RE:' differences source MSG: 0 # 04:42:55 SUBJECT 'RE:' differences source DB : 1966 # 04:42:55 Messages imported: 0, skipped: 9167, error: 0 --------------------------------- # 04:42:55 Import: path F:/ECHOBASE/BBCON96/a05/ # 04:51:14 SUBJECT 'RE:' differences: 829 # 04:51:14 SUBJECT 'RE:' differences source MSG: 0 # 04:51:14 SUBJECT 'RE:' differences source DB : 829 # 04:51:14 Messages imported: 0, skipped: 9190, error: 0 --------------------------------- # 04:51:15 Import: path F:/ECHOBASE/BBCON96/a06/ # 04:55:59 Mail content mismatch MsgId found: 3923.msg # 04:55:59 - SUBJECT expected: auf persťnlichen Wunsch: die 240000er Statistik # 04:55:59 - SUBJECT found : auf persoenlichen Wunsch: die 240000er Statistik # 04:55:59 dupe found: 3923.msg (MsgID) # 04:59:17 SUBJECT differences: 1 # 04:59:17 SUBJECT 'RE:' differences: 522 # 04:59:17 SUBJECT 'RE:' differences source MSG: 0 # 04:59:17 SUBJECT 'RE:' differences source DB : 522 # 04:59:17 Messages imported: 0, skipped: 9569, error: 0 --------------------------------- # 04:59:17 Import: path F:/ECHOBASE/BBCON96/a07/ # 05:00:54 Mail content mismatch MsgId found: 314.msg # 05:00:54 - SUBJECT expected: extra f [129d / 81h] r Tina # 05:00:54 - SUBJECT found : extra fuer Tina # 05:00:54 dupe found: 314.msg (MsgID) # 05:06:52 SUBJECT differences: 2 # 05:06:52 SUBJECT 'RE:' differences: 239 # 05:06:52 SUBJECT 'RE:' differences source MSG: 0 # 05:06:52 SUBJECT 'RE:' differences source DB : 239 # 05:06:52 Messages imported: 0, skipped: 9590, error: 0 --------------------------------- # 05:06:54 Import: path F:/ECHOBASE/BBCON96/a08/ # 05:12:59 SUBJECT 'RE:' differences: 27 # 05:12:59 SUBJECT 'RE:' differences source MSG: 0 # 05:12:59 SUBJECT 'RE:' differences source DB : 27 # 05:12:59 Messages imported: 0, skipped: 8513, error: 0 --------------------------------- # 05:13:00 Import: path F:/ECHOBASE/BBCON96/a09/ # 05:20:04 SUBJECT 'RE:' differences: 9 # 05:20:04 SUBJECT 'RE:' differences source MSG: 0 # 05:20:04 SUBJECT 'RE:' differences source DB : 9 # 05:20:04 Messages imported: 0, skipped: 9841, error: 0 --------------------------------- # 05:20:05 Import: path F:/ECHOBASE/BBCON96/a10/ # 05:29:00 SUBJECT 'RE:' differences: 26 # 05:29:00 SUBJECT 'RE:' differences source MSG: 0 # 05:29:00 SUBJECT 'RE:' differences source DB : 26 # 05:29:00 Messages imported: 0, skipped: 10000, error: 0 --------------------------------- # 05:29:01 Import: path F:/ECHOBASE/BBCON96/a11/ # 05:33:38 Messages imported: 0, skipped: 6052, error: 0 --------------------------------- # 05:33:39 Import: path F:/ECHOBASE/BBCON96/a12/ # 05:41:01 SUBJECT 'RE:' differences: 113 # 05:41:01 SUBJECT 'RE:' differences source MSG: 0 # 05:41:01 SUBJECT 'RE:' differences source DB : 113 # 05:41:01 Messages imported: 0, skipped: 9500, error: 0 --------------------------------- # 05:41:01 Import: path F:/ECHOBASE/BBCON96/a13/ # 05:48:19 SUBJECT 'RE:' differences: 12 # 05:48:19 SUBJECT 'RE:' differences source MSG: 0 # 05:48:19 SUBJECT 'RE:' differences source DB : 12 # 05:48:19 Messages imported: 0, skipped: 9000, error: 0 --------------------------------- # 05:48:20 Import: path F:/ECHOBASE/BBCON96/a14/ # 05:54:05 Messages imported: 0, skipped: 7000, error: 0 --------------------------------- # 05:54:06 Import: path F:/ECHOBASE/BBCON96/ # 05:56:38 dupe found: 6263.MSG (-RE) # 05:56:38 dupe found: 6264.MSG (-RE) # 05:56:38 dupe found: 6265.MSG (-RE) # 05:56:39 dupe found: 6266.MSG (-RE) # 05:56:39 Messages imported: 0, skipped: 6285, error: 0 --------------------------------- # 05:56:40 Import: path F:/ECHOBASE/BBCON96/a13/a13a/ problems on import based on a bug of the CrossPoint to FTS1 msg converter --------------------------------- # 05:59:57 Import: path F:/ECHOBASE/BBCON96/a13/a13b/ problems on import based on a bug of the CrossPoint to FTS1 msg converter --------------------------------- # 06:02:39 Import: path F:/ECHOBASE/BBCON96/a13/a13c/ problems on import based on a bug of the CrossPoint to FTS1 msg converter ---------------------------------This log displays several more problems in identifying dupes:
# 14:17:44 searching # 14:17:44 msgid : 28.juno@1:14/400 0926ac03 # 14:17:44 folder : JUNO # 14:17:44 ftscdate: 21 Jul 06 17:36:00 # 14:17:44 subject : AIM # 14:17:44 probably dupe found: db2, weight: (2009) # 14:17:44 rec(1) id : 172 # 14:17:44 msgid : 28.juno@1:14/400 0926ac03 # 14:17:44 folder : JUNO # 14:17:44 ftscdate: 21 Jul 06 16:36:00 # 14:17:44 subject : AIM # 14:17:44 weight : (2009) # 14:17:44 dupe found: 547 (extended)x4)
CRC32 of text part, w/o Kludges until the Origin line.
and pre NOMSGID text for identifying those specials
Perl Script:
# Extract MSGID ------------------------------------------------------
$y = index($kludges, "MSGID:");
if ( $y < 0 ) {
$crc32 = (crc32($body,0xffffffff) ^ 0xffffffff);
$msgid = sprintf("NOMSGID %s %08x",$originnode,$crc32);
}
else {
$msgid = substr($kludges, $y + 7);
$y = index($msgid, "\x01");
if ( $y >= 0) {
$msgid = substr($msgid, 0, $y );
}
}
-------------------------------------------------------------------
x1) probably only mails before 2006# 18:40:50 missing msgid db1 rec id (4118) # 18:40:50 folder : JOKES.GER # 18:40:50 ftscdate: 23 Jan 03 20:07:00 # 18:40:50 msgid : # 18:40:50 subject : 2 einer noch :-) # 18:40:50 originnode: 2:240/2188.37 # 18:40:50 origin: <.^.> (2:240/2188.37) # 18:40:50 fromaka: 2:240/5138 # 18:40:50 new msgid: 1:2320/105.999 40f6575e
[ctrl+A]RESCANNED 2:240/5138
[ctrl+A]SPLIT: 23 Jan 03 22:22:24 @240/2188 5 02/02 +++++++++++
[ctrl+A]PID: XP 3.12d R/A17545
[ctrl+A]CHRS: IBMPC 2
[ctrl+A]PATH: 240/2188 2468/9929 9911 24/903 2432/200 240/5778 5138
[ctrl+A]PID: MBSE-FIDO 0.36.00
[ctrl+A]CHRS: IBMPC 2
[ctrl+A]ACUPDATE: DELETE comcast.com 7b9f2196
[ctrl+A]TID: MBSE-FIDO 0.36.00
[ctrl+A]RFC-From: Cosmo Roadkill <...>
[ctrl+A]RFC-Control: cancel <...>
[ctrl+A]RFC-Organization: BOFH Space Command, Usenet Division
[ctrl+A]RFC-Message-ID: <...>
[ctrl+A]RFC-Sender: <...>(KenFuny)
[ctrl+A]RFC-Approved: ...
[ctrl+A]RFC-X-No-Archive: yes
[ctrl+A]RFC-X-Cancelled-By: ...
[ctrl+A]RFC-X-Original-Path: ....POST
[ctrl+A]RFC-X-Original-Subject: Satan's Lawyer
[ctrl+A]RFC-X-Original-Date: Tue, 21 Jan 2003 13:59:34 -0600
[ctrl+A]RFC-X-Original-NNTP-Posting-Host: 68.62.134.31
[ctrl+A]RFC-X-Original-From: <...>(KenFuny)
[ctrl+A]RFC-X-Original-X-Trace: ...
[ctrl+A]RFC-X-CosmoTraq: ...
[ctrl+A]RFC-X-Cancel-ID: ...
[ctrl+A]RFC-X-Commentary: Spam is lame. Spammers are bad.
[ctrl+A]PATH: 248/4001 24/903 2432/200 240/5778 5138
[ctrl+A]RFC-Content-Transfer-Encoding: 8bit
[ctrl+A]GATEWAY: RFC1036/822 fifi.woody.ch [FIDOGATE 4.4.9]
[ctrl+A]SPLIT: 24 Feb 05 14:05:24 @301/812 2254 04/04 +++++++++++
[ctrl+A]PATH: 301/812 808 2432/200 240/5778 5138
[ctrl+A]GATEWAY: RFC1036/822 mordor.mailstation.de [FIDOGATE 4.4.4]
[ctrl+A]PATH: 2437/209 40 2432/200 240/5778 5138
[ctrl+A]PATH: 2471/77 2476/480 24/903 2432/200 240/5778 5138
[ctrl+A]RFC-Content-Transfer-Encoding: 8bit
[ctrl+A]GATEWAY: RFC1036/822 fidogate.albi.life.de [FIDOGATE 4.4.9],
FIDO fidogate.albi.life.de [FIDOGATE 4.4.9]
[ctrl+A]PATH: 2471/77 2476/480 24/903 2432/200 240/5778 5138
[ctrl+A]PATH: 301/812 808 2432/200 240/5778 5138
[ctrl+A]Content-Transfer-Encoding: quoted-printable
[ctrl+A]X-MIME-Autoconverted: from 8bit to quoted-printable by delorie.com id i6F02I46007522
[ctrl+A]X-Foreign-Sender: 207.22.48.162
[ctrl+A]X-UIDL: b9ff87542029c292827ac1ac3436e77d
------------------------------------------------------------------------------
[ctrl+A]MSGID: 1:2320/105.999 40f6575e
[ctrl+A]REPLY: <...> 82a5ddd2
[ctrl+A]PATH: 2320/105 261/38 123/500 774/605 2432/200 240/5778 5138
[ctrl+A]X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id i6EBv3Hu021947
[ctrl+A]Reply-To: ...
[ctrl+A]Errors-To: ...
[ctrl+A]X-Mailing-List: ...
[ctrl+A]X-Unsubscribes-To: ...
[ctrl+A]Precedence: bulk
[ctrl+A]Content-Transfer-Encoding: quoted-printable
[ctrl+A]X-MIME-Autoconverted: from 8bit to quoted-printable by delorie.com id i6EBv4P5021952
[ctrl+A]X-Foreign-Sender: 207.22.48.162
[ctrl+A]X-UIDL: 9bde4c0bf78e2965e01186b4d0317109
[ctrl+A]MSGID: 1:2320/105.999 40f59f5e
[ctrl+A]PATH: 2320/105 261/38 123/500 774/605 2432/200 240/5778 5138
[ctrl+A]X-Foreign-Sender: 207.22.48.162
[ctrl+A]X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11)
[ctrl+A]X-Spam-Status: No, hits=-2.9 required=4.0 tests=BAYES_00,MSGID_FROM_MTA_HEADER
[ctrl+A]X-Spam-Level:
[ctrl+A]X-UIDL: 44e29c162ed0d8a42e026ff2e6346ce2
[ctrl+A]MSGID: 1:2320/105.999 4052ef89
[ctrl+A]PATH: 2320/105 261/38 123/500 774/605 2432/200 240/5778 5138
[ctrl+A]REPLYALSO ...
[ctrl+A]MSGID: 1:2320/105.999 3fd5acc7
[ctrl+A]PATH: 2320/105 261/38 123/500 774/605 2432/200 240/5778 5138
[ctrl+A]REPLYADDR ...
[ctrl+A]REPLYALSO ...
[ctrl+A]PATH: 2320/105 261/38 123/500 774/605 2432/200 240/5778 5138
...
$y = index($kludges, "MSGID:");
if ( $y < 0 ) {
$crc32 = (crc32($body,0xffffffff) ^ 0xffffffff);
$msgid = sprintf("NOMSGID %s %08x",$originnode,$crc32);
}
else {
$msgid = substr($kludges, $y + 7);
...
# Extract MSGID ------------------------------------------------------
if ($originnode != "" ) {
$crc32 = (crc32($body,0xffffffff) ^ 0xffffffff);
$msgid = sprintf("NOMSGID %s %08x",$originnode,$crc32);
} else {
$y = index($kludges, "MSGID:");
if ( $y < 0 ) {
$crc32 = (crc32($body,0xffffffff) ^ 0xffffffff);
$msgid = sprintf("NOMSGID %s %08x",$originnode,$crc32);
}
else {
$msgid = substr($kludges, $y + 7);
$y = index($msgid, "\x01");
if ( $y >= 0) {
$msgid = substr($msgid, 0, $y );
}
}
}
-------------------------------------------------------------------
# 18:40:19 searching # 18:40:19 msgid : 2:240/2188.23@fidonet 2f31b525 # 18:40:19 folder : JOKES.GER # 18:40:19 ftscdate: 07 Apr 05 12:21:00 # 18:40:19 subject : Anwaelte I. # 18:40:19 dupe found: 143, weight: (2004) # 18:40:19 rec(1) id : 142 # 18:40:19 msgid : 2:240/2188.23@fidonet 2f31b525 # 18:40:19 folder : JOKES.GER # 18:40:19 ftscdate: 05 Jun 06 22:00:42 # 18:40:19 subject : Anwaelte I. # 18:40:19 weight : (2004) # 18:40:19 dupe found, skipped. db1 id: 143 (extended)
# 03:25:13 rec(543) id : 162 # 03:25:13 len body 1 / crc: 574, ADFB033E # 03:25:13 len body 2 / crc: 574, 237404DD # 03:25:13 searching # 03:25:13 msgid : 20.juno@1:14/400 092312c8 # 03:25:13 folder : JUNO # 03:25:13 ftscdate: 19 Jul 06 00:17:00 # 03:25:13 subject : Juno # 03:25:13 dupe found: 543, weight: (3000) # 03:25:13 rec(1) id : 162 # 03:25:13 msgid : 20.juno@1:14/400 092312c8 # 03:25:13 folder : JUNO # 03:25:13 ftscdate: 18 Jul 06 23:17:00 # 03:25:13 subject : Juno # 03:25:13 weight : (3000) # 03:25:13 dupe found, skipped. db1 id: 543 (extended)
# 03:40:01 rec(543) id : 162 # 03:40:01 len body 1 / crc: 574, ADFB033E # 03:40:01 len body 2 / crc: 574, 237404DD # 03:40:01 difference(s): # 03:40:01 body 1: 12-Win32 # 03:40:01 body 2: 11-Win32
TID: SBBSecho 2.11-Win32 r1.170 Sep 11 2005 MSC 1200 vs. TID: SBBSecho 2.12-Win32 r1.183 Jan 7 2007 MSC 1200
# 04:54:50 rec(143) id : 142 # 04:54:50 len body 1 / crc: 1229, 1B3BE546 # 04:54:50 len body 2 / crc: 1204, 22F15FC6 # 04:54:50 searching # 04:54:50 msgid : 2:240/2188.23@fidonet 2f31b525 # 04:54:50 folder : JOKES.GER # 04:54:50 ftscdate: 07 Apr 05 12:21:00 # 04:54:50 subject : Anwaelte I. # 04:54:50 dupe found: 143, weight: (2004) # 04:54:50 rec(1) id : 142 # 04:54:50 msgid : 2:240/2188.23@fidonet 2f31b525 # 04:54:50 folder : JOKES.GER # 04:54:50 ftscdate: 05 Jun 06 22:00:42 # 04:54:50 subject : Anwaelte I. # 04:54:50 weight : (2004) # 04:54:50 dupe found, skipped. db1 id: 143 (extended)
# 05:53:43 searching # 05:53:43 msgid : 2:2437/22 1ae791a1 # 05:53:43 folder : 2437.NETZ # 05:53:43 ftscdate: 22 Sep 08 02:35:13 # 05:53:43 subject : Urlaub # 05:53:43 differences found: 2520 # 05:53:43 rec(1) id : 2425 # 05:53:43 msgid : 2:2437/22 1ae791a1 # 05:53:43 folder : 2437.SMALLTALK # 05:53:43 ftscdate: 22 Sep 08 02:35:13 # 05:53:43 subject : Urlaub # 05:53:43 weight : (0)
| Primary | Id |
| dupecheck | folder+ftscdate(18)+msgid+subject |
| Export | datetime+folder |
| Statistics | datewritten |
| to add: imsgid (not yet defined) | msgid |
| Field | intval | addslashes | umlaut | strip x0A | strip RE's | CheckFieldLength |
| id | + | - | - | - | - | - |
| ftscdate | - | - | - | - | - | + (19) |
| datetime | - | - | - | - | - | - |
| folder | - | - | - | - | - | - |
| fromnode | - | - | - | - | - | - |
| tonode | - | - | - | - | - | - |
| fromname | - | + | - | - | - | - |
| toname | - | + | - | - | - | - |
| subject | - | + | + | - | + | + (72) |
| attrib | + | - | - | - | - | - |
| msgid | - | - | - | - | - | - |
| replyid | - | - | - | - | - | - |
| origin | - | + | - | - | - | - |
| path | - | - | - | - | - | - |
| local | - | - | - | - | - | - |
| rcvd | - | - | - | - | - | - |
| sent | - | - | - | - | - | - |
| kludges | - | + | - | - | - | - |
| body | - | + | - | + | - | - |
| seenby | - | - | - | - | - | - |
| datewritten | - | - | - | - | - | - |
| Uplink | + | - | - | - | - | - |
DROP TABLE IF EXISTS `echo_0`; SET @saved_cs_client = @@character_set_client; SET character_set_client = utf8; CREATE TABLE `echo_0` ( `id` int(11) NOT NULL auto_increment, `ftscdate` varchar(20) NOT NULL default '', `datetime` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `folder` varchar(72) NOT NULL default '', `fromnode` varchar(72) NOT NULL default '', `tonode` varchar(72) NOT NULL default '', `fromname` varchar(36) NOT NULL default '', `toname` varchar(36) NOT NULL default '', `subject` varchar(72) NOT NULL default '', `attrib` smallint(5) unsigned NOT NULL default '0', `msgid` varchar(72) NOT NULL default '', `replyid` varchar(72) NOT NULL default '', `origin` varchar(72) NOT NULL default '', `path` varchar(255) NOT NULL default '', `local` char(1) NOT NULL default 'Y', `rcvd` char(1) NOT NULL default 'N', `sent` char(1) NOT NULL default 'N', `kludges` mediumblob, `body` mediumblob, `seenby` mediumblob, `datewritten` datetime default NULL, `Uplink` int(10) unsigned default '0', PRIMARY KEY (`id`), UNIQUE KEY `dupecheck` USING BTREE (`folder`,`ftscdate`(18),`msgid`,`subject`), KEY `Export` (`datetime`,`folder`), KEY `Statistics` (`datewritten`), KEY `imsgid` USING BTREE (`msgid`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; SET character_set_client = @saved_cs_client;
# 03:45:47 dupe found: 7167, weight: (12009) # 03:45:47 dupe found: 7168, weight: (12009) # 03:45:48 dupe found: 7169, weight: (12009) # 03:45:48 dupe found: 7171, weight: (12009)
Fileliste der letzten 7 Tage vom 15.02.07
001/014: Allgemeines / Files aus dem Fido-Netz
------------------------------------------------------------------------------
1: FNEWSO06.ZIP 10.02.07 7K FIDONEWS 05 Feb 2007 Vol 24 No 06
FIDONEWS 05 Feb 2007 Vol 24 No 06
...
2: NODEDIFF.A40 10.02.07 4K Fidonet NODEDIFF for this week (ARC)
Fileliste der letzten 7 Tage vom 15.02.09
001/014: Allgemeines / Files aus dem Fido-Netz
------------------------------------------------------------------------------
1: FNEWSQ06.ZIP 14.02.09 7K FIDONEWS 09 Feb 2009 Vol 26 No 06
FIDONEWS 09 Feb 2009 Vol 26 No 06
...
2: NODEDIFF.A44 14.02.09 4K Fidonet NODEDIFF for this week (ARC)
# 04:47:45 rec(98915) id : 15836 # 04:47:45 len body 1 / crc: 2421, A5712533 # 04:47:45 len body 2 / crc: 2421, 27D94809 # 04:47:45 difference(s): # 04:47:45 body 1: 09 001/014: Allgemeines / Files aus dem # 04:47:45 body 2: 07 001/014: Allgemeines / Files aus dem # 04:47:45 dupe found: 98915, weight: (2009)
| SeenBy Field content | Let's not underestimate the forceSEEN-BY: 5/0 7102/1 7105/1 7106/20 22 |
| Results in | # 13:00:55 ERROR: SQL error: (1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 's not underestimate the forceSEEN-BY: 5/0 7102/1 7105/1 7106/20 |
| Solution | check and verify SeenBy field Seenby field have to start with: "SEEN-BY: ..." |
| Same with ... | |
| # 13:00:55 E insert message failed: 118944 - echo_W: # 13:00:54 E insert message failed: 118869 - echo_W: they'SEEN-BY: | |
| Many Dupes found | * |
| Results in | # 12:35:43 * dupe found: (VATICAN) 28616, weight: (12000) |
| Analyze |
1. get record 28616 from db1 2. get msgid -> "1:396/45 457912b8" (in db1) 3. search for msgid "1:396/45 457912b8" (in db1) 4. results in 2 records: id "4438", ftscdate "08 Dec 06 07:22:30" id "28616", ftscdate "08 Mar 08 11:12:39" folder, fromnode, tonode, fromname, toname, subject, msgid, replyid, origin are all identical body crc identical ftscdate and path varies path differences: id "4438": 396/45 106/1 123/500 774/605 2432/200 id "28616": 396/45 261/38 140/1 772/1 2432/200 |
| Solution | needs discussion eliminate dupes based on identical body crc ? keep dupes caused by different ftscdate ? A resend after about 15 months later, or late distribution thru 2nd path ... |
| Same with ... | |
|
# 12:35:43 * dupe found: (VATICAN) 28617, weight: (12000) # 12:35:43 * dupe found: (VATICAN) 28618, weight: (12000) # 12:35:43 * dupe found: (VATICAN) 28619, weight: (12000) # 12:35:43 * dupe found: (VATICAN) 28620, weight: (12000) # 12:35:43 * dupe found: (VATICAN) 28621, weight: (12000) # 12:35:43 * dupe found: (VATICAN) 28622, weight: (12000) # 12:35:43 * dupe found: (VATICAN) 28623, weight: (12000) # 12:35:43 * dupe found: (VATICAN) 28624, weight: (12000) # 12:35:43 * dupe found: (VATICAN) 28625, weight: (12000) and many many more ... | |
| Action | needs discussion about dupes check also based on body-crc check |
This is a part of PhFiTo (aka PHP Fido Tosser)
Copyright (c) Alex Kocharin, 2:50/13
This program is distributed under GNU GPL v2
See docs/license for details
$Id: phfito.php,v 1.13 2008/03/18 22:31:28 kocharin Exp $
API's included in this package:
| smtp header infos |
| smtp body, html message |
| smtp body, txt message |
| header infos | eg from-node, to-node, ftscdate, kludges | several fields |
| raw message | message as received by the node | maybe several fields, eg from, to, subject, header-kludges, body, footer-kludges |
| "normalized" message | transformed message content as used for dupechecking | maybe several fields, eg from, to, subject, header-kludges, body, footer-kludges |
| complete threshold |
| abort threshold |
| Timeout |
| list of sites |
| value |
| start PT |
| end PT |
| commit record |
| commit state |
| previous -> |
| thread |
| create PT |
| created flag |
| delete PT |
| delete commit record |
| delete state |
|
| © 2003-2025 by Ulrich Schroeter | 04981 | |