Changeset 4183


Ignore:
Timestamp:
12/12/13 15:11:24 (10 years ago)
Author:
olhsha
Message:

fixing HSQL/Postgres discrepance problem when setting an current_time date in UTC as default (translation added for Unit test DB and actual Postgres DB is updated so the defaults is set implicitely (no need to send it via the sql request).

Location:
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/java/eu/dasish/annotation/backend/dao/impl/JdbcAnnotationDao.java

    r4173 r4183  
    316316        StringBuilder sql = new StringBuilder("UPDATE ");
    317317        sql.append(annotationTableName).append(" SET ").
    318                 append(last_modified).append("=  current_timestamp AT TIME ZONE INTERVAL '00:00' HOUR TO MINUTE,").
     318                append(last_modified).append("=  default,").
    319319                append(body_text).append("= '").append(text).
    320320                append("' WHERE ").append(annotation_id).append("= ?");
     
    334334        StringBuilder sql = new StringBuilder("UPDATE ");
    335335        sql.append(annotationTableName).append(" SET ").
    336                 append(last_modified).append("=  current_timestamp AT TIME ZONE 'UTC' HOUR TO MINUTE,").
     336                append(last_modified).append("=  default,").
    337337                append(body_text).append("= :bodyText, ").
    338338                append(body_mimetype).append("= :bodyMimeType, ").
     
    362362                append(body_mimetype).append("= :bodyMimeType ,").
    363363                append(headline).append("=  :headline ,").
    364                 append(last_modified).append("=  current_timestamp AT TIME ZONE 'UTC' HOUR TO MINUTE,").
     364                append(last_modified).append("=  default,").
    365365                append(is_xml).append("= :isXml").
    366366                append(" WHERE ").append(external_id).append("= :externalID");
     
    403403        StringBuilder sql = new StringBuilder("INSERT INTO ");
    404404        sql.append(annotationTableName).append("(").append(external_id).append(",").append(owner_id);
    405         sql.append(",").append(headline).append(",").append(body_text).append(",").append(body_mimetype).append(",").append(is_xml).append(",").append(last_modified).append(" ) VALUES (:externalId, :ownerId, :headline, :bodyText, :bodyMimeType, :isXml, current_timestamp AT TIME ZONE INTERVAL '00:00' HOUR TO MINUTE)");
     405        sql.append(",").append(headline).append(",").append(body_text).append(",").append(body_mimetype).append(",").append(is_xml).
     406                append(" ) VALUES (:externalId, :ownerId, :headline, :bodyText, :bodyMimeType, :isXml)");
    406407        int affectedRows = getSimpleJdbcTemplate().update(sql.toString(), params);
    407408        return ((affectedRows > 0) ? getInternalID(externalID) : null);
  • DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/java/eu/dasish/annotation/backend/dao/impl/JdbcTargetDao.java

    r4181 r4183  
    173173        params.put("fragmentDescriptor", linkParts[1]);
    174174        StringBuilder sql = new StringBuilder("INSERT INTO ");
    175         sql.append(targetTableName).append("(").append(external_id).append(",").append(link_uri).append(",").append(version).append(",").append(last_modified).append(",").append(fragment_descriptor).append(" ) VALUES (:externalId, :linkUri,  :version, current_timestamp AT TIME ZONE INTERVAL '00:00' HOUR TO MINUTE, :fragmentDescriptor)");
     175        sql.append(targetTableName).append("(").append(external_id).append(",").append(link_uri).append(",").append(version).append(",").append(fragment_descriptor).append(" ) VALUES (:externalId, :linkUri,  :version, :fragmentDescriptor)");
    176176        final int affectedRows = getSimpleJdbcTemplate().update(sql.toString(), params);
    177177        return (affectedRows > 0 ? getInternalID(UUID.fromString(externalID.toString())) : null);
  • DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/sql/DashishAnnotatorCreate.sql

    r4146 r4183  
    5050    notebook_id SERIAL UNIQUE NOT NULL,
    5151    external_id text UNIQUE NOT NULL,
    52     last_modified timestamp default now(),
     52    last_modified timestamp default current_timestamp AT TIME ZONE 'UTC',
    5353    title text,
    5454    owner_id integer NOT NULL
     
    5959    annotation_id SERIAL UNIQUE NOT NULL,
    6060    external_id text UNIQUE NOT NULL,
    61     last_modified timestamp default now(),
     61    last_modified timestamp default current_timestamp AT TIME ZONE 'UTC',
    6262    owner_id integer REFERENCES principal(principal_id),
    6363    headline text,
     
    7272    target_id SERIAL UNIQUE NOT NULL,
    7373    external_id text UNIQUE NOT NULL,
    74     last_modified timestamp default now(),
     74    last_modified timestamp default current_timestamp AT TIME ZONE 'UTC',
    7575    link_uri text,
    7676    version text,
  • DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/test/java/eu/dasish/annotation/backend/dao/impl/JdbcResourceDaoTest.java

    r4173 r4183  
    6868        //sqlString = sqlString.replaceAll("UUID", "text");
    6969        sqlString = sqlString.replaceAll("SERIAL NOT NULL", "INTEGER GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY");
     70        sqlString = sqlString.replaceAll("AT TIME ZONE 'UTC'", "AT TIME ZONE INTERVAL '00:00' HOUR TO MINUTE");
    7071        return sqlString;
    7172    }
  • DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/test/java/eu/dasish/annotation/backend/rest/AnnotationsTest.java

    r4176 r4183  
    112112        sqlString = sqlString.replaceAll("CACHE 1;", "; -- CACHE 1;");
    113113        //sqlString = sqlString.replaceAll("UUID", "text");
    114         sqlString = sqlString.replaceAll("SERIAL NOT NULL", "INTEGER GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY");
     114        sqlString = sqlString.replaceAll("SERIAL NOT NULL", "INTEGER GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY");       
     115        sqlString = sqlString.replaceAll("AT TIME ZONE 'UTC'", "AT TIME ZONE INTERVAL '00:00' HOUR TO MINUTE");
    115116        return sqlString;
    116117    }
Note: See TracChangeset for help on using the changeset viewer.