I have updated 3.2 to 3.3 and i can't start traccar daemon.
Tracker-server.log:
2016-01-16 13:28:14 INFO: Operating system name: Linux version: 2.6.32-042stab108.3 architecture: amd64
2016-01-16 13:28:14 INFO: Java runtime name: OpenJDK 64-Bit Server VM vendor: Oracle Corporation version: 24.91-b01
2016-01-16 13:28:14 INFO: Memory limit heap: 683mb non-heap: 214mb
2016-01-16 13:28:14 INFO: Character encoding: UTF-8 charset: UTF-8
2016-01-16 13:28:14 INFO: Version: 3.2-SNAPSHOT
Wrapper log:
STATUS | wrapper | 2016/01/16 13:33:09 | --> Wrapper Started as Daemon
STATUS | wrapper | 2016/01/16 13:33:09 | Java Service Wrapper Community Edition 64-bit 3.5.27
STATUS | wrapper | 2016/01/16 13:33:09 | Copyright (C) 1999-2015 Tanuki Software, Ltd. All Rights Reserved.
STATUS | wrapper | 2016/01/16 13:33:09 | http://wrapper.tanukisoftware.com
STATUS | wrapper | 2016/01/16 13:33:09 |
STATUS | wrapper | 2016/01/16 13:33:10 | Launching a JVM...
INFO | jvm 1 | 2016/01/16 13:33:10 | WrapperManager: Initializing...
INFO | jvm 1 | 2016/01/16 13:33:11 | [MLog-Init-Reporter] INFO com.mchange.v2.log.MLog - MLog clients using slf4j logging.
INFO | jvm 1 | 2016/01/16 13:33:11 | [WrapperSimpleAppMain] INFO com.mchange.v2.c3p0.C3P0Registry - Initializing c3p0-0.9.5.2 [built 08-December-2015 22:06:04 -0800; debug? true; trace: 10]
INFO | jvm 1 | 2016/01/16 13:33:12 | INFO 1/16/16 1:33 PM: liquibase: Successfully acquired change log lock
INFO | jvm 1 | 2016/01/16 13:33:14 | INFO 1/16/16 1:33 PM: liquibase: Reading from admin_traccar.DATABASECHANGELOG
INFO | jvm 1 | 2016/01/16 13:33:14 | INFO 1/16/16 1:33 PM: liquibase: /opt/traccar/data/db.changelog-master.xml: /opt/traccar/data/db.changelog-3.3.xml::changelog-3.3::author: Default value dropped from user.salt
INFO | jvm 1 | 2016/01/16 13:33:14 | INFO 1/16/16 1:33 PM: liquibase: /opt/traccar/data/db.changelog-master.xml: /opt/traccar/data/db.changelog-3.3.xml::changelog-3.3::author: Default value added to server.registration
INFO | jvm 1 | 2016/01/16 13:33:14 | SEVERE 1/16/16 1:33 PM: liquibase: /opt/traccar/data/db.changelog-master.xml: /opt/traccar/data/db.changelog-3.3.xml::changelog-3.3::author: Change Set /opt/traccar/data/db.changelog-3.3.xml::changelog-3.3::author failed. Error: Duplicate column name 'readonly' [Failed SQL: ALTER TABLE admin_traccar.server ADD readonly BIT(1) DEFAULT 0 NOT NULL]
INFO | jvm 1 | 2016/01/16 13:33:14 | liquibase.exception.DatabaseException: Duplicate column name 'readonly' [Failed SQL: ALTER TABLE admin_traccar.server ADD readonly BIT(1) DEFAULT 0 NOT NULL]
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:301)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:55)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:107)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.database.AbstractJdbcDatabase.execute(AbstractJdbcDatabase.java:1251)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.database.AbstractJdbcDatabase.executeStatements(AbstractJdbcDatabase.java:1234)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.changelog.ChangeSet.execute(ChangeSet.java:554)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:51)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:73)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.Liquibase.update(Liquibase.java:212)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.Liquibase.update(Liquibase.java:192)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.Liquibase.update(Liquibase.java:188)
INFO | jvm 1 | 2016/01/16 13:33:14 | at org.traccar.database.DataManager.initDatabaseSchema(DataManager.java:169)
INFO | jvm 1 | 2016/01/16 13:33:14 | at org.traccar.database.DataManager.<init>(DataManager.java:67)
INFO | jvm 1 | 2016/01/16 13:33:14 | at org.traccar.Context.init(Context.java:121)
INFO | jvm 1 | 2016/01/16 13:33:14 | at org.traccar.Main.main(Main.java:29)
INFO | jvm 1 | 2016/01/16 13:33:14 | at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO | jvm 1 | 2016/01/16 13:33:14 | at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
INFO | jvm 1 | 2016/01/16 13:33:14 | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
INFO | jvm 1 | 2016/01/16 13:33:14 | at java.lang.reflect.Method.invoke(Method.java:606)
INFO | jvm 1 | 2016/01/16 13:33:14 | at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:325)
INFO | jvm 1 | 2016/01/16 13:33:14 | at java.lang.Thread.run(Thread.java:745)
INFO | jvm 1 | 2016/01/16 13:33:14 | Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Duplicate column name 'readonly'
INFO | jvm 1 | 2016/01/16 13:33:14 | at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
INFO | jvm 1 | 2016/01/16 13:33:14 | at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
INFO | jvm 1 | 2016/01/16 13:33:14 | at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
INFO | jvm 1 | 2016/01/16 13:33:14 | at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.Util.handleNewInstance(Util.java:404)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.Util.getInstance(Util.java:387)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:939)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3878)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3814)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2478)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2625)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2547)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2505)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.StatementImpl.executeInternal(StatementImpl.java:840)
INFO | jvm 1 | 2016/01/16 13:33:14 | at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:740)
INFO | jvm 1 | 2016/01/16 13:33:14 | at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:299)
INFO | jvm 1 | 2016/01/16 13:33:14 | ... 20 more
INFO | jvm 1 | 2016/01/16 13:33:14 | INFO 1/16/16 1:33 PM: liquibase: /opt/traccar/data/db.changelog-3.3.xml::changelog-3.3::author: Successfully released change log lock
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp:
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: Encountered an error running main:
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: liquibase.exception.MigrationFailedException: Migration failed for change set /opt/traccar/data/db.changelog-3.3.xml::changelog-3.3::author:
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: Reason: liquibase.exception.DatabaseException: Duplicate column name 'readonly' [Failed SQL: ALTER TABLE admin_traccar.server ADD readonly BIT(1) DEFAULT 0 NOT NULL]
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.changelog.ChangeSet.execute(ChangeSet.java:590)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:51)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:73)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.Liquibase.update(Liquibase.java:212)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.Liquibase.update(Liquibase.java:192)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.Liquibase.update(Liquibase.java:188)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at org.traccar.database.DataManager.initDatabaseSchema(DataManager.java:169)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at org.traccar.database.DataManager.<init>(DataManager.java:67)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at org.traccar.Context.init(Context.java:121)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at org.traccar.Main.main(Main.java:29)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at java.lang.reflect.Method.invoke(Method.java:606)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:325)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at java.lang.Thread.run(Thread.java:745)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: Caused by: liquibase.exception.DatabaseException: Duplicate column name 'readonly' [Failed SQL: ALTER TABLE admin_traccar.server ADD readonly BIT(1) DEFAULT 0 NOT NULL]
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:301)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:55)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:107)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.database.AbstractJdbcDatabase.execute(AbstractJdbcDatabase.java:1251)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.database.AbstractJdbcDatabase.executeStatements(AbstractJdbcDatabase.java:1234)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.changelog.ChangeSet.execute(ChangeSet.java:554)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: ... 15 more
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Duplicate column name 'readonly'
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.Util.handleNewInstance(Util.java:404)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.Util.getInstance(Util.java:387)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:939)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3878)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3814)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2478)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2625)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2547)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2505)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.StatementImpl.executeInternal(StatementImpl.java:840)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:740)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:299)
INFO | jvm 1 | 2016/01/16 13:33:14 | WrapperSimpleApp Error: ... 20 more
STATUS | wrapper | 2016/01/16 13:33:16 | <-- Wrapper Stopped
Cnfig:
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE properties SYSTEM 'http://java.sun.com/dtd/properties.dtd'>
<properties>
<!-- SERVER CONFIG -->
<entry key='web.enable'>true</entry>
<entry key='web.port'>8082</entry>
<entry key='web.path'>/opt/traccar/web</entry>
<entry key='geocoder.enable'>true</entry>
<entry key='geocoder.type'>google</entry>
<entry key='logger.enable'>true</entry>
<entry key='logger.level'>all</entry>
<entry key='logger.file'>/opt/traccar/logs/tracker-server.log</entry>
<!-- DATABASE CONFIG -->
<entry key='database.driver'>com.mysql.jdbc.Driver</entry>
<entry key='database.url'>jdbc:mysql://localhost:3306/traccar?allowMultiQueries=true&autoReconnect=true&useUnicode=yes&characterEncoding=UTF-8&sessionVariables=sql_mode=ANSI_QUOTES</entry>
<entry key='database.user'>traccar</entry>
<entry key='database.password'></entry>
<entry key='database.changelog'>/opt/traccar/data/db.changelog-master.xml</entry>
<entry key='database.selectServers'>
SELECT * FROM server;
</entry>
<entry key='database.updateServer'>
UPDATE server SET
registration = :registration,
readonly = :readonly,
map = :map,
bingKey = :bingKey,
mapUrl = :mapUrl,
language = :language,
distanceUnit = :distanceUnit,
speedUnit = :speedUnit,
latitude = :latitude,
longitude = :longitude,
zoom = :zoom
WHERE id = :id;
</entry>
<entry key='database.loginUser'>
SELECT * FROM users
WHERE email = :email;
</entry>
<entry key='database.selectUser'>
SELECT * FROM users
WHERE id = :id;
</entry>
<entry key='database.selectUsersAll'>
SELECT * FROM users;
</entry>
<entry key='database.insertUser'>
INSERT INTO users (name, email, hashedPassword, salt, admin)
VALUES (:name, :email, :hashedPassword, :salt, :admin);
</entry>
<entry key='database.updateUser'>
UPDATE users SET
name = :name,
email = :email,
admin = :admin,
map = :map,
language = :language,
distanceUnit = :distanceUnit,
speedUnit = :speedUnit,
latitude = :latitude,
longitude = :longitude,
zoom = :zoom
WHERE id = :id;
</entry>
<entry key='database.updateUserPassword'>
UPDATE users SET hashedPassword = :hashedPassword, salt = :salt WHERE id = :id;
</entry>
<entry key='database.deleteUser'>
DELETE FROM users WHERE id = :id;
</entry>
<entry key='database.getPermissionsAll'>
SELECT userId, deviceId FROM user_device;
</entry>
<entry key='database.selectDevicesAll'>
SELECT * FROM devices;
</entry>
<entry key='database.selectDevices'>
SELECT * FROM devices d INNER JOIN user_device ud ON d.id = ud.deviceId WHERE ud.userId = :userId;
</entry>
<entry key='database.insertDevice'>
INSERT INTO devices (name, uniqueId) VALUES (:name, :uniqueId);
</entry>
<entry key='database.updateDevice'>
UPDATE devices SET name = :name, uniqueId = :uniqueId WHERE id = :id;
</entry>
<entry key='database.updateDeviceStatus'>
UPDATE devices SET status = :status, lastUpdate = :lastUpdate WHERE id = :id;
</entry>
<entry key='database.deleteDevice'>
DELETE FROM devices WHERE id = :id;
</entry>
<entry key='database.linkDevice'>
INSERT INTO user_device (userId, deviceId) VALUES (:userId, :deviceId);
</entry>
<entry key='database.unlinkDevice'>
DELETE FROM user_device WHERE userId = :userId AND deviceId = :deviceId;
</entry>
<entry key='database.selectPositions'>
SELECT * FROM positions WHERE deviceId = :deviceId AND fixTime BETWEEN :from AND :to ORDER BY fixTime;
</entry>
<entry key='database.insertPosition'>
INSERT INTO positions (deviceId, protocol, serverTime, deviceTime, fixTime, valid, latitude, longitude, altitude, speed, course, address, attributes)
VALUES (:deviceId, :protocol, :now, :time, :time, :valid, :latitude, :longitude, :altitude, :speed, :course, :address, :attributes);
</entry>
<entry key='database.selectLatestPositions'>
SELECT * FROM positions WHERE id IN (SELECT positionId FROM devices);
</entry>
<entry key='database.updateLatestPosition'>
UPDATE devices SET positionId = :id WHERE id = :deviceId;
</entry>
<!-- PROTOCOL CONFIG -->
<entry key='gps103.port'>5001</entry>
<entry key='tk103.port'>5002</entry>
<entry key='gl100.port'>5003</entry>
<entry key='gl200.port'>5004</entry>
<entry key='t55.port'>5005</entry>
</properties>
I have updated 3.2 to 3.3 and i can't start traccar daemon.
Tracker-server.log:
Wrapper log:
Cnfig: