6.0.0-git
2018-12-15

[#14565] Oracle Database issue kronolith_event
Summary Oracle Database issue kronolith_event
Queue Kronolith
Queue Version 4.2.18
Type Bug
State Unconfirmed
Priority 2. Medium
Owners
Requester ico (at) cc (dot) upv (dot) es
Created 2017-01-24 (690 days ago)
Due
Updated 2018-02-21 (297 days ago)
Assigned
Resolved
Milestone
Patch No

History
2018-02-21 12:47:19 ico (at) cc (dot) upv (dot) es Comment #2 Reply to this comment
Issue is not yet solved.
2017-01-24 11:47:23 ico (at) cc (dot) upv (dot) es Comment #1
Type ⇒ Bug
State ⇒ Unconfirmed
Priority ⇒ 2. Medium
Summary ⇒ Oracle Database issue kronolith_event
Queue ⇒ Kronolith
Milestone ⇒
Patch ⇒ No
Reply to this comment
Webmail Edition 5.2.16

When inserting a new event in Kronolith code don't set 'event_baseid' value.
Table definition sets this default value to '' (empty string) buy 
Oracle change this value to NULL.

Later, when user does an Export to ics file (or from Thunderbird 
Lightning with CalDAV), the query executed is like:

    Jan 13 10:19:17 DEBUG: HORDE [kronolith] SQL (0,0018s)
             SELECT event_id, event_uid, event_description, event_location,
               event_private, event_status, event_attendees, event_title,
               event_recurcount, event_url, event_timezone, event_recurtype,
               event_recurenddate, event_recurinterval, event_recurdays,
    event_start,
               event_end, event_allday, event_alarm, event_alarm_methods,
               event_modified, event_exceptions, event_creator_id,
    event_resources,
               event_baseid, event_exceptionoriginaldate FROM
    kronolith_events WHERE
               calendar_id = 'A8mzyMqs_CkXoK11wyMtam1' AND event_baseid
    = '' [pid 10108 on line 328 of
    "/usr/share/pear/Horde/Db/Adapter/Oci8.php"]

and there is not results.

'event_baseid' is defined with default value = '', but nullable.
Oracle treats empty strings like nulls.

By doing a little change in /horde/kronolith/lib/Driver/Sql.php line 
296 like this:
             // ICO - UPV Oracle no entiende ''
             //$conditions .= "event_baseid = ''";
             $conditions .= "event_baseid IS NULL";

the problem  is workaround.

I don't know if this is the right solution or there is another better.

Maybe you can solve this issue in next software version.

Thanks

Saved Queries