6.0.0-beta1
7/4/25

[#13868] Changes made in kronolith are not send to AS devices.
Summary Changes made in kronolith are not send to AS devices.
Queue Synchronization
Queue Version FRAMEWORK_5_2
Type Bug
State Not A Bug
Priority 1. Low
Owners mrubinsk (at) horde (dot) org
Requester horde (at) vdorst (dot) com
Created 02/18/2015 (3789 days ago)
Due
Updated 02/27/2015 (3780 days ago)
Assigned 02/19/2015 (3788 days ago)
Resolved 02/27/2015 (3780 days ago)
Github Issue Link
Github Pull Request
Milestone
Patch No

History
02/27/2015 03:06:40 PM Michael Rubinsky Comment #24
State ⇒ Not A Bug
Reply to this comment
Going to close this. If you figure out a bug in Horde caused the 
modseq to be reset, please create a new ticket.
02/26/2015 07:44:43 PM horde (at) vdorst (dot) com Comment #23 Reply to this comment
I emptied (truncate) horde_histories and horde_histories_modseq which 
reset the FOREIGN KEY.
Now I know were to look if it happens again.
It is working again.




02/26/2015 03:29:34 PM Michael Rubinsky Comment #22 Reply to this comment
I was looking in the database table "horde_histories".
So every change in contacts, calender and tasks are logged in 
"horde_histories" right?
Correct. Each change *should* get a higher value.
- I was wondering if "history_modseq" should allways increased or 
can it reset? And when will it reset?
It should never reset. If it does, there is an issue somewhere in the 
database layer.
See upper picture of the table where history_id gets async with 
history_modseq.
It's possible that an existing history entry is modified, rather than 
replaced in certain cases, but this still looks funky, especially 
given the range of values.
- high "history_modseq" is related to the lasted modification? See 
lower picture of the table where history_ts is sorted min to max. 
Where I can see that the highest history_ts is not allways the 
lasted history_id. Is this correct?
Probably not, and this can most definitely mess things up.
Can I empty horde_histories to start over without any consequence?
That would probably be the best bet at this point, though you may lose 
data related to editing objects - such as who last modified a contact, 
for example. If that data is important for you to maintain,  you can 
use the horde-db-migrate script to migrate the history library down to 
the "2" migration and then back "up". This should reset the modseq 
values for you.

Still, would be nice to figure out WHY the modseq value was reset.   
Maybe it IS related to the other bug, though I thought that was only 
pgsql...
02/26/2015 11:43:00 AM horde (at) vdorst (dot) com Comment #21
New Attachment: horde_histories.png Download
Reply to this comment
I was looking in the database table "horde_histories".
So every change in contacts, calender and tasks are logged in 
"horde_histories" right?

- I was wondering if "history_modseq" should allways increased or can 
it reset? And when will it reset? See upper picture of the table where 
history_id gets async with history_modseq.

- high "history_modseq" is related to the lasted modification? See 
lower picture of the table where history_ts is sorted min to max. 
Where I can see that the highest history_ts is not allways the lasted 
history_id. Is this correct?


Can I empty horde_histories to start over without any consequence?


02/25/2015 05:17:42 PM Michael Rubinsky Comment #20 Reply to this comment
E.g., look in Kronolith_Api::getChanges() to start.
02/25/2015 05:13:41 PM Michael Rubinsky Comment #19 Reply to this comment
In Bug: 13876 he is also talked about contacts.

I added 2 contacts, one on the device and one in turba.
But contacts don't sync to the device. Only device to server.

"history_modseq" incremented with 2, value is now "364"
I have also 2 new history entries. "turba......."
Yes. As stated in my earlier comment, yours is a different issue.

You need to see why the modseq increment is not being picked up by 
activesync. This is probably because either it is not monitoring the 
calendar/addressbooks you think it is, or because the value of modseq 
cached by the activesync folder object is not correct.
02/25/2015 04:48:12 PM horde (at) vdorst (dot) com Comment #18 Reply to this comment
In Bug: 13876 he is also talked about contacts.

I added 2 contacts, one on the device and one in turba.
But contacts don't sync to the device. Only device to server.

"history_modseq" incremented with 2, value is now "364"
I have also 2 new history entries. "turba......."
02/25/2015 04:31:19 PM horde (at) vdorst (dot) com Comment #17 Reply to this comment
I see alot of these in my debug horde_log.

2015-02-25T17:11:54+01:00 DEBUG: HORDE [kronolith] PHP ERROR: 
Non-static method Date_Calc::dateDiff() should not be called 
statically, assuming $this from incompatible context [pid 1164 on line 
115 of "/data/webapps/horde/kronolith/lib/Day.php"]
2015-02-25T17:11:54+01:00 DEBUG: HORDE [kronolith] PHP ERROR: 
Non-static method Date_Calc::isValidDate() should not be called 
statically, assuming $this from incompatible context [pid 1164 on line 
2061 of "/usr/share/php/Date/Calc.php"]
2015-02-25T17:11:54+01:00 DEBUG: HORDE [kronolith] PHP ERROR: 
Non-static method Date_Calc::isValidDate() should not be called 
statically, assuming $this from incompatible context [pid 1164 on line 
2064 of "/usr/share/php/Date/Calc.php"]
2015-02-25T17:11:54+01:00 DEBUG: HORDE [kronolith] PHP ERROR: 
Non-static method Date_Calc::dateToDays() should not be called 
statically, assuming $this from incompatible context [pid 1164 on line 
2067 of "/usr/share/php/Date/Calc.php"]
2015-02-25T17:11:54+01:00 DEBUG: HORDE [kronolith] PHP ERROR: 
Non-static method Date_Calc::dateToDays() should not be called 
statically, assuming $this from incompatible context [pid 1164 on line 
2068 of "/usr/share/php/Date/Calc.php"]

Current entry for "horde_histories_modseq" is
"history_modseq" = "362"
"history_modseqempty" = "0"

I don't know how it is related to "horde_histories"
which has an entry with "history_id" = "955"
02/25/2015 04:14:44 PM horde (at) vdorst (dot) com Comment #16 Reply to this comment
Are you using postgres? Possibly related to Bug: 13876?
Nope Mysql:
mysqld --version
150225 17:13:11 [Warning] Using unique option prefix key_buffer 
instead of key_buffer_size is deprecated and will be removed in a 
future release. Please use the full name instead.
mysqld  Ver 5.5.41-0ubuntu0.14.10.1 for debian-linux-gnu on x86_64 ((Ubuntu))


02/25/2015 04:04:32 PM Michael Rubinsky Comment #15 Reply to this comment
Actually, thinking about this some more, this wouldn't affect a newly 
created account on the client, only accounts that were created prior 
to the modseq value being reset. So...back to square one. Cannot 
reproduce.
02/25/2015 03:52:58 PM Michael Rubinsky Comment #14 Reply to this comment
Are you using postgres? Possibly related to Bug: 13876?
02/25/2015 03:50:44 PM Michael Rubinsky Comment #13 Reply to this comment
I added caldav account to my phone.
I did a quick test.
- Caldav works both ways.
Not surprising, as Caldav is not a "push" service.
- Activesync still one way (device to server).
Still cannot reproduce this.  You are going to need to find out why 
the history system is not detecting any changes. Check all logs 
(Horde/webserver/sync) for errors as a start.
02/25/2015 03:30:38 PM horde (at) vdorst (dot) com Comment #12 Reply to this comment
I added caldav account to my phone.
I did a quick test.
- Caldav works both ways.
- Activesync still one way (device to server).
02/24/2015 07:16:25 PM horde (at) vdorst (dot) com Comment #11
New Attachment: horde.tar[2].xz Download
Reply to this comment
I see I added the "Test" appointment to the local calender on the BB sim.

Here the appended logfiles.

- Readded caltest account to BB sim
- Added on the device appointment  test`
- Synced
- Changed appointent in kronolith to test`1
- resync.

But doesn't pickup the changes.
02/24/2015 06:46:54 PM horde (at) vdorst (dot) com Comment #10
New Attachment: horde.tar[1].xz Download
Reply to this comment

[Show Quoted Text - 26 lines]
=== Double entries

Double entries in Free/Busy URL list are tasks and calenders which has 
the same name.
I did rename the task list from rene -> tasks rene and it changed the 
list. So that mystery is solved.

=== Logs and events

I added horde debug log and activesync log of blackberry simulator.
- I added a user 'caltest' in openldap.
- Clear the horde debug log.
- Logged-in with caltest.

Some Events
- 2015-02-24T16:22:50+00:00: Added activesync Caltest account to bb simulator.
- 2015-02-24T17:07:37+00:00: Added appointment "test" on the device.
- 2015-02-24T17:17:15+00:00: Reset device for bb simulator

Note: BB simulator did sync so well at all.

Note 2: also see some error in the logs.

=== ldapuser layout

# caltest van Dorst, users, <mydomain>
dn: cn=caltest van Dorst,ou=users,dc=<mydomain>,dc=<mydomain>
mail: caltest@<mydomain>
givenName: caltest
mailEnabled: TRUE
objectClass: inetOrgPerson
objectClass: PostfixBookMailAccount
objectClass: top
objectClass: simpleSecurityObject
objectClass: person
objectClass: shadowAccount
userPassword: <mypasswd>
sn: van Dorst
uid: caltest
cn: caltest van Dorst





02/24/2015 02:28:59 PM Michael Rubinsky Comment #9 Reply to this comment
I cannot reproduce any of this.
\> "Choose the calendars to include in the above Free/Busy URL" list is:

[Show Quoted Text - 15 lines]
This is most likely the culprit, ActiveSync is checking for changes, 
but checking in the wrong "version" of the calendar. You need to find 
out why your calendars are doubled,  but this has nothing to do with 
ActiveSync.

I would start by reviewing your horde log for errors and/or find the 
queries that created the double calendars. You can also create a fresh 
account and try to get the calendars to double.
02/24/2015 11:14:07 AM horde (at) vdorst (dot) com Comment #8
New Attachment: freebusy.png Download
Reply to this comment
I also see my calenders double in Preferences for Calendar -> 
Free/Busy Information.
But I don't know if that happens after "Reset all device state" as in 
comment #7

"Choose the calendars to include in the above Free/Busy URL" list is:

rene
lisa [lisa]
samen [samen]
rene
lisa [lisa]
samen [samen]
Birthday in rene
Birthday in samen [samen]
Birthday in verjaardag [samen]
Anniversaries in rene
Anniversaries in samen [samen]
Anniversaries in verjaardag [samen]

I checked other accounts, they also have double entries.
02/24/2015 11:08:29 AM horde (at) vdorst (dot) com Comment #7
New Attachment: Calendars.png Download
Reply to this comment
I don't no if this is related.

My BlackBerry Z10 10.3.1.2243 sees my all my calerders double after   
"Reset all device state".

Reproduce:
- Do in menu preferances->Global Preferences->activesync and then 
"Reset all device state".
- Sync Device.

After that I still don't get any new data.

02/24/2015 10:01:53 AM horde (at) vdorst (dot) com Comment #6 Reply to this comment
Also the tasks has the same issue.
Modification are send from device to server.
But no modifications are send to the device.
02/23/2015 07:26:23 PM horde (at) vdorst (dot) com Comment #5 Reply to this comment
If I do a full resync on my blackberry device (simply disable and
re-enable calender sync) I get all appointments.
Sounds to me like a client issue, not issuing SYNC or PING requests.
I do have two clients with the same problem.
- Blackberry 10.3.1.1565
- Moto G LTE, Android 4.4.4 with latest Nine.

Both don't get updates from the server.
But both devices can push items to the server. Which show up in kronolith.

[Show Quoted Text - 9 lines]
If I do a full sync on my blackberry. I re-adding the calender. I get 
all the appointments of all calenders.
But not the changes made after the full resync.

Could I made a configuration error?
I added my configuration in my first post.

If you are out of clues then I try to reinstall horde.







02/23/2015 04:40:56 PM Michael Rubinsky Comment #4
Assigned to Michael Rubinsky
Reply to this comment
If I do a full resync on my blackberry device (simply disable and 
re-enable calender sync) I get all appointments.
Sounds to me like a client issue, not issuing SYNC or PING requests.
5) Any events you are attempting to edit/create fall withing the time
frame of what the client is configured to synchronize.
After a full resync, I expend no problems.
Sorry, so you mean that it is working now?

I still have not been able to reproduce this on any of my dozen+ test clients.
02/19/2015 09:31:14 PM horde (at) vdorst (dot) com Comment #3 Reply to this comment

[Show Quoted Text - 13 lines]
1,2,3,4> It did work around 3 weeks ago. I noticed that some of my 
appointemt were missing on my devices. But I can't see what is wrong. 
I did a fresh server install and used the old config.
Yes I can see all the calenders on my devices as a separate calender 
with the names (rene, lisa and samen) and appointment.
If I do a full resync on my blackberry device (simply disable and 
re-enable calender sync) I get all appointments.
5) Any events you are attempting to edit/create fall withing the 
time frame of what the client is configured to synchronize.
After a full resync, I expend no problems.


02/19/2015 06:13:02 PM Michael Rubinsky Comment #2
State ⇒ Feedback
Priority ⇒ 1. Low
Reply to this comment
I am unable to reproduce this. All of my test clients work as 
expected. There was a minor issue with detecting changes in the 
"filtertype" (the setting that determines how long back to sync 
items), but this did not/does not affect the picking up of *new* 
calendar entries.

I would check that:

1) Your client supports multiple calendar collections (I know that Nine does).
2) You have enabled multiple calendar sync support in Kronolith.
3) You actually have selected the calendar to synchronize in Kronolith.
4) Verify the calendars appear on the device.
5) Any events you are attempting to edit/create fall withing the time 
frame of what the client is configured to synchronize.
02/18/2015 09:20:35 PM horde (at) vdorst (dot) com Comment #1 (Private)
Priority ⇒ 2. Medium
State ⇒ Unconfirmed
New Attachment: horde.tar.xz Download
Patch ⇒ No
Milestone ⇒
Queue ⇒ Synchronization
Summary ⇒ Changes made in kronolith are not send to AS devices.
Type ⇒ Bug
[Hidden]

Saved Queries