Hello,
I have compiled the current james-project from linagora's github
repository. Then built the jpa docker server. I took the files that
would get installed in the docker image to used them as installation in
a debian server with PostgreSQL as database.
When testing this installation, I have encounter two issues which seem
related to openjpa.
The first, is regarding the Sieve mailet, and a problem mapping a column
of an entity:
9507 Global INFO [main] openjpa.Runtime - Starting OpenJPA 3.1.2
9744 Global INFO [main] openjpa.jdbc.JDBC - Using dictionary class
"org.apache.openjpa.jdbc.sql.PostgresDictionary".
18173 Global INFO [main] openjpa.jdbc.JDBC - Connected to PostgreSQL
version 11.9 using JDBC driver PostgreSQL JDBC Driver version 42.2.18.
24017 Global WARN [main] openjpa.jdbc.Schema - Existing column
"activation_date_time" on table "public.JAMES_SIEVE_SCRIPT" is
incompatible with the same column in the given schema definition.
Existing column:
Full Name: JAMES_SIEVE_SCRIPT.activation_date_time
Type: timestamp
Size: 35
Default: null
Not Null: false
Given column:
Full Name: JAMES_SIEVE_SCRIPT.ACTIVATION_DATE_TIME
Type: unknown(2014)
Size: 0
Default: null
Not Null: false
The second, is that the imap server throws a persistence exception. It
seems that the sql to find the mailbox has a ESCAPE '\' part that is not OK.
Wrapped by: org.apache.openjpa.persistence.PersistenceException:
Unterminated string literal started at position 213 in SQL SELECT
t0.mailbox_id, t0.mailbox_highest_modseq, t0.mailbox_last_uid,
t0.mailbox_name, t0.mailbox_namespace, t0.mailbox_uid_validity,
t0.user_name FROM public.JAMES_MAILBOX t0 WHERE (t0.mailbox_name LIKE ?
ESCAPE '\' AND t0.user_name = ? AND t0.mailbox_namespace = ?). Expected
char {SELECT t0.mailbox_id, t0.mailbox_highest_modseq,
t0.mailbox_last_uid, t0.mailbox_name, t0.mailbox_namespace,
t0.mailbox_uid_validity, t0.user_name FROM public.JAMES_MAILBOX t0 WHERE
(t0.mailbox_name LIKE ? ESCAPE '\' AND t0.user_name = ? AND
t0.mailbox_namespace = ?)} [code=0, state=42601]
at
org.apache.openjpa.jdbc.sql.DBDictionary.narrow(DBDictionary.java:5278)
at
org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:5238)
at
org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:134)
at
org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:115)
at
org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:67)
at
org.apache.openjpa.jdbc.kernel.SelectResultObjectProvider.handleCheckedException(SelectResultObjectProvider.java:162)
at
org.apache.openjpa.lib.rop.EagerResultList.<init>(EagerResultList.java:42)
at org.apache.openjpa.kernel.QueryImpl.toResult(QueryImpl.java:1311)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:1062)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:912)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:843)
at
org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:601)
at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:297)
at
org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:314)
at
reactor.core.publisher.MonoFlattenIterable.subscribeOrReturn(MonoFlattenIterable.java:87)
... 45 common frames omitted
Wrapped by: org.apache.james.mailbox.exception.MailboxException: Search
of mailbox UserBound{namespace=Optional[#private],
user=Optional[Username{localPart=pablo.pita, domainPart=Optional[Domain
: pitagoral.com]}],
mailboxNameExpression=org.apache.james.mailbox.model.search.PrefixedRegex@9365af5b}
failed
at
org.apache.james.mailbox.jpa.mail.JPAMailboxMapper.lambda$findMailboxWithPathLike$13(JPAMailboxMapper.java:175)
at reactor.core.publisher.Flux.lambda$onErrorMap$29(Flux.java:6479)
Anyway, the emails somehow arrived at the destination, and I could also
read emails from thunderbird.
The upgrade to OpenJPA 3.1.2 from version 3.1.0, particularly because
OpenJPA 3.1.1 claims to solve some issues related to date/time mappings
(http://openjpa.apache.org/openjpa-3.1.x.html#changes-in-openjpa-311),
did not solve the issues.
Any feedback for the problems here ?
Pablo
---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscr...@james.apache.org
For additional commands, e-mail: server-user-h...@james.apache.org