From 6dbaaef7b7e4d1b23541a92f71e4a738f99c36d8 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 14 Oct 2013 21:19:23 -0700 Subject: don't update old entries with no address --- include/onedirsync.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include/onedirsync.php') diff --git a/include/onedirsync.php b/include/onedirsync.php index b9c17628a..5f971629f 100644 --- a/include/onedirsync.php +++ b/include/onedirsync.php @@ -28,7 +28,7 @@ function onedirsync_run($argv, $argc){ if(! $r) return; - if($r['ud_flags'] & UPDATE_FLAGS_UPDATED) + if(($r[0]['ud_flags'] & UPDATE_FLAGS_UPDATED) || (! $r[0]['ud_addr'])) return; update_directory_entry($r[0]); -- cgit v1.2.3 From 83daf51460db24356b0690aff2cfb5e639f98576 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 14 Oct 2013 21:56:56 -0700 Subject: extra logging --- include/onedirsync.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include/onedirsync.php') diff --git a/include/onedirsync.php b/include/onedirsync.php index 5f971629f..35fcbbc7b 100644 --- a/include/onedirsync.php +++ b/include/onedirsync.php @@ -12,7 +12,7 @@ function onedirsync_run($argv, $argc){ cli_startup(); $a = get_app(); - logger('onedirsync: start'); + logger('onedirsync: start' . intval($argv[1])); if(($argc > 1) && (intval($argv[1]))) $update_id = intval($argv[1]); -- cgit v1.2.3 From b75163fb80518efb9e06b374f5093da5d2e6f6d4 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 14 Oct 2013 22:04:45 -0700 Subject: why do these have invalid id's? --- include/onedirsync.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include/onedirsync.php') diff --git a/include/onedirsync.php b/include/onedirsync.php index 35fcbbc7b..c2ac3b59d 100644 --- a/include/onedirsync.php +++ b/include/onedirsync.php @@ -12,7 +12,7 @@ function onedirsync_run($argv, $argc){ cli_startup(); $a = get_app(); - logger('onedirsync: start' . intval($argv[1])); + logger('onedirsync: start ' . intval($argv[1])); if(($argc > 1) && (intval($argv[1]))) $update_id = intval($argv[1]); -- cgit v1.2.3 From 66f427db5ea1c27f247ed329521695bc34a8fdd6 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 15 Oct 2013 02:33:35 -0700 Subject: directory sync optimisations to save redundant processing --- include/onedirsync.php | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'include/onedirsync.php') diff --git a/include/onedirsync.php b/include/onedirsync.php index c2ac3b59d..8ae1df5e5 100644 --- a/include/onedirsync.php +++ b/include/onedirsync.php @@ -31,6 +31,25 @@ function onedirsync_run($argv, $argc){ if(($r[0]['ud_flags'] & UPDATE_FLAGS_UPDATED) || (! $r[0]['ud_addr'])) return; + // Have we probed this channel more recently than the other directory server + // (where we received this update from) ? + // If we have, we don't need to do anything except mark any older entries updated + + $x = q("select * from updates where ud_addr = '%s' and ud_date > '%s' and ( ud_flags & %d ) order by ud_date desc limit 1", + dbesc($r[0]['ud_addr']), + dbesc($r[0]['ud_date']), + intval(UPDATE_FLAGS_UPDATED) + ); + if($x) { + $y = q("update updates set ud_flags = ( ud_flags | %d ) where ud_addr = '%s' and not ( ud_flags & %d ) and ud_date < '%s' ", + intval(UPDATE_FLAGS_UPDATED), + dbesc($r[0]['ud_addr']), + intval(UPDATE_FLAGS_UPDATED), + dbesc($x[0]['ud_date']) + ); + return; + } + update_directory_entry($r[0]); return; -- cgit v1.2.3