Hi, Emmanuel.

Thanks for pointing on Embedded log feature. Very useful.
Now I can restore backend from dump, but I still can't enable backend.
See log.

1. Database failed(I have stopped win service SQl Server)
2. Trying to create table:

15:42:57,390 DEBUG controller.core.Controller Starting new
ControllerWorkerThread
15:42:57,406 DEBUG controller.core.Controller Connection from
/192.168.0.2:4195
15:42:57,406 DEBUG controller.core.Controller Notifying
VirtualDatabaseWorkerThread
15:43:12,406 DEBUG controller.core.Controller ControllerWorkerThread
terminating.
15:43:51,656 DEBUG controller.RequestManager.VirtualDatabase Broadcasting
request create table Table_1 (ID bigint,NAME var... to all controllers
(Member(address=/192.168.0.2:3268,
uid=192.168.0.2:3268)->[Member(address=/192.168.0.2:3268,
uid=192.168.0.2:3268), Member
15:43:51,656 DEBUG continuent.hedera.adapters Sending message 6 to 2
members.
15:43:51,906 DEBUG controller.RequestManager.VirtualDatabase Database schema
is dirty, refreshing it
15:43:51,906 DEBUG controller.RequestManager.VirtualDatabase Scheduling
write request (281474976710657): create table Table_1 (ID bigint,NAME var...
15:43:51,906 DEBUG sequoia.controller.scheduler Schedule create table
Table_1 (ID bigint,NAME varchar(50), EMAIL varchar(50),TEXT1
varchar(50),TEXT2 varchar(50),TEXT3 varchar(50),TEXT4 varchar(50),TEXT5
varchar(50))/ - Current pending writes: 1
15:43:51,906 DEBUG controller.RequestManager.VirtualDatabase Load balancing
write request (281474976710657,281474976710657): create table Table_1 (ID
bigint,NAME var...
15:43:51,937 DEBUG sequoia.controller.recoverylog Logging request 1
15:43:51,937 DEBUG sequoia.controller.recoverylog
[EMAIL PROTECTED] INTO RECOVERY
VALUES(?,?,?,?,?,?,?,?,?,?,?)], parameters=[[1], [sa], [create table Table_1
(ID bigint,NAME varchar(50), EMAIL varchar(50),TEXT1 varchar(50),TEX
15:43:51,937 DEBUG sequoia.controller.loadbalancer Request 281474976710657
execute on 1 backends
15:43:51,953 DEBUG sequoia.controller.loadbalancer Removed create table
Table_1 (ID bigint,NAME varchar(50), EMAIL varchar(50),TEXT1
varchar(50),TEXT2 varchar(50),TEXT3 varchar(50),TEXT4 varchar(50),TEXT5
varchar(50))/ from total order queue
15:43:51,953 DEBUG backend.DatabaseBackend.mainPCDB Scheduling request
create table Table_1 (ID bigint,NAME varchar(50), EMAIL varchar(50),TEXT1
varchar(50),TEXT2 varchar(50),TEXT3 varchar(50),TEXT4 varchar(50),TEXT5
varchar(50))/ in non conflicting queue
15:43:51,968 DEBUG backend.DatabaseBackend.mainPCDB Adding task Autocommit
StatementExecuteUpdateTask 281474976710657 (create table Table_1 (ID
bigint,NAME varchar(50), EMAIL varchar(50),TEXT1 varchar(50),TEXT2
varchar(50),TEXT3 varchar(50),TEXT4 varchar(50),TEXT5 va
15:43:51,968 DEBUG backend.DatabaseBackend.mainPCDB Executing task
Autocommit StatementExecuteUpdateTask 281474976710657 (create table Table_1
(ID bigint,NAME varchar(50), EMAIL varchar(50),TEXT1 varchar(50),TEXT2
varchar(50),TEXT3 varchar(50),TEXT4 varchar(50),TEXT5
15:43:52,015 DEBUG continuent.hedera.adapters Received reply from
Member(address=/192.168.0.3:1495, uid=192.168.0.3:1495) to message 6
15:43:52,906 DEBUG sequoia.controller.connection failed to get connection
for driver
java.sql.SQLException: Network error IOException: Connection refused:
connect
       at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(
ConnectionJDBC2.java:372)
       at net.sourceforge.jtds.jdbc.ConnectionJDBC3.<init>(
ConnectionJDBC3.java:50)
       at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:178)
       at java.sql.DriverManager.getConnection(Unknown Source)
       at java.sql.DriverManager.getConnection(Unknown Source)
       at
org.continuent.sequoia.controller.connection.DriverManager.getConnection(
DriverManager.java:106)
       at
org.continuent.sequoia.controller.connection.AbstractConnectionManager.getConnectionFromDriver
(AbstractConnectionManager.java:376)
       at
org.continuent.sequoia.controller.connection.VariablePoolConnectionManager.getConnection
(VariablePoolConnectionManager.java:337)
       at
org.continuent.sequoia.controller.connection.AbstractConnectionManager.getRenewedConnectionInAutoCommit
(AbstractConnectionManager.java:421)
       at
org.continuent.sequoia.controller.connection.AbstractConnectionManager.retrieveConnectionInAutoCommit
(AbstractConnectionManager.java:607)
       at
org.continuent.sequoia.controller.loadbalancer.tasks.StatementExecuteUpdateTask.executeInAutoCommit
(StatementExecuteUpdateTask.java:156)
       at
org.continuent.sequoia.controller.loadbalancer.tasks.StatementExecuteUpdateTask.executeTask
(StatementExecuteUpdateTask.java:105)
       at
org.continuent.sequoia.controller.loadbalancer.tasks.AbstractTask.execute(
AbstractTask.java:140)
       at
org.continuent.sequoia.controller.loadbalancer.BackendWorkerThread.run(
BackendWorkerThread.java:194)
Caused by: java.net.ConnectException: Connection refused: connect
       at java.net.PlainSocketImpl.socketConnect(Native Method)
       at java.net.PlainSocketImpl.doConnect(Unknown Source)
       at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
       at java.net.PlainSocketImpl.connect(Unknown Source)
       at java.net.SocksSocketImpl.connect(Unknown Source)
       at java.net.Socket.connect(Unknown Source)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
       at java.lang.reflect.Method.invoke(Unknown Source)
       at net.sourceforge.jtds.jdbc.SharedSocket.createSocketForJDBC3(
SharedSocket.java:289)
       at net.sourceforge.jtds.jdbc.SharedSocket.<init>(SharedSocket.java
:250)
       at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(
ConnectionJDBC2.java:297)
       ... 13 more
15:43:53,000 ERROR sequoia.controller.connection Backend mainPCDB is no more
accessible.
15:43:53,000 DEBUG controller.loadbalancer.RAIDb1 write request
281474976710657 failed:
Backend VirtualDatabase - BackendWorkerThread for backend 'mainPCDB' with
RAIDb level:1 failed (Backend mainPCDB is no more reachable.)

15:43:53,000 DEBUG controller.RequestManager.VirtualDatabase SQLException
while executing distributed write request write request 281474976710657
failed:
Backend VirtualDatabase - BackendWorkerThread for backend 'mainPCDB' with
RAIDb level:1 failed (Backend mainPCDB is no more reachable.)

java.sql.SQLException: write request 281474976710657 failed:
Backend VirtualDatabase - BackendWorkerThread for backend 'mainPCDB' with
RAIDb level:1 failed (Backend mainPCDB is no more reachable.)

       at
org.continuent.sequoia.common.exceptions.SQLExceptionFactory.getSQLException
(SQLExceptionFactory.java:88)
       at
org.continuent.sequoia.controller.loadbalancer.raidb1.RAIDb1.checkTaskCompletion
(RAIDb1.java:936)
       at
org.continuent.sequoia.controller.loadbalancer.raidb1.RAIDb1.execWriteRequest
(RAIDb1.java:342)
       at
org.continuent.sequoia.controller.loadbalancer.raidb1.RAIDb1.statementExecuteUpdate
(RAIDb1.java:248)
       at
org.continuent.sequoia.controller.requestmanager.RequestManager.loadBalanceStatementExecuteUpdate
(RequestManager.java:910)
       at
org.continuent.sequoia.controller.virtualdatabase.protocol.DistributedStatementExecuteUpdate.executeScheduledRequest
(DistributedStatementExecuteUpdate.java:87)
       at
org.continuent.sequoia.controller.virtualdatabase.protocol.DistributedRequest.handleMessageMultiThreaded
(DistributedRequest.java:157)
       at
org.continuent.sequoia.controller.virtualdatabase.DistributedVirtualDatabase.handleMessageMultiThreaded
(DistributedVirtualDatabase.java:335)
       at org.continuent.hedera.adapters.MulticastRequestAdapterThread.run(
MulticastRequestAdapterThread.java:102)
15:43:53,000 DEBUG backend.DatabaseBackend.mainPCDB Database backend
mainPCDB is now in state sequoia.virtualdatabase.backend.disabled
15:43:53,046 INFO  controller.RequestManager.VirtualDatabase Setting new
virtual database schema.
15:43:53,046 DEBUG backend.DatabaseBackend.mainPCDB Stopping 5 worker
threads of backend mainPCDB
15:43:53,046 DEBUG continuent.hedera.adapters Replying to
Member(address=/192.168.0.2:3268, uid=192.168.0.2:3268) for message 6
15:43:53,062 DEBUG continuent.hedera.adapters Received reply from
Member(address=/192.168.0.2:3268, uid=192.168.0.2:3268) to message 6
15:43:53,062 DEBUG controller.RequestManager.VirtualDatabase Request create
table Table_1 (ID bigint,NAME var... completed.
15:43:53,062 DEBUG controller.RequestManager.VirtualDatabase Request
281474976710657 failed on controller Member(address=/192.168.0.2:3268, uid=
192.168.0.2:3268) (java.sql.SQLException: write request 281474976710657
failed:
Backend VirtualDatabase - BackendWorkerThread for backend 'mainPCDB' with
RAIDb level:1 failed (Backend mainPCDB is no more reachable.)
)
15:43:53,062 DEBUG controller.RequestManager.VirtualDatabase Controller
Member(address=/192.168.0.3:1495, uid=192.168.0.3:1495) has no more backends
to execute query (
org.continuent.sequoia.common.exceptions.NoMoreBackendException: No backend
to execute the request.)
15:43:53,078 DEBUG continuent.hedera.adapters Sending message 7 to 1
members.
15:43:53,093 DEBUG sequoia.controller.scheduler Write completed, remaining
pending writes: 0
15:43:53,093 DEBUG continuent.hedera.adapters Replying to
Member(address=/192.168.0.2:3268, uid=192.168.0.2:3268) for message 7
15:43:53,093 DEBUG sequoia.controller.recoverylog Logging request 1
15:43:53,093 DEBUG sequoia.controller.recoverylog
[EMAIL PROTECTED] RECOVERY SET
exec_status=?,update_count=?,exec_time=?,completion_log_id=? WHERE
log_id=?], parameters=[[F], [-1], [0], [1], [1]]]
15:43:53,093 DEBUG continuent.hedera.adapters Received reply from
Member(address=/192.168.0.2:3268, uid=192.168.0.2:3268) to message 7
15:43:53,093 DEBUG continuent.hedera.adapters Sending message 8 to 1
members.
15:43:53,125 DEBUG continuent.hedera.adapters Received reply from
Member(address=/192.168.0.3:1495, uid=192.168.0.3:1495) to message 8
15:43:53,125 DEBUG controller.RequestManager.VirtualDatabase Request create
table Table_1 (ID bigint,NAME var... failed (write request 281474976710657
failed:
Backend VirtualDatabase - BackendWorkerThread for backend 'mainPCDB' with
RAIDb level:1 failed (Backend mainPCDB is no more reachable.)
)

3. Restoring database connection(starting win service of SQL Server).
4. Restoring from dump :

Virtual database Administrator Login > admin
Virtual database Administrator Password >
Ready to administrate virtual database VirtualDatabase
VirtualDatabase(admin) > expert on
Expert mode on
VirtualDatabase(admin) > show backend *
+--------------------------+---------------------------------------------------+
| Backend Name             |
mainPCDB                                          |
| Driver                   | net.sourceforge.jtds.jdbc.Driver
|
| URL                      |
jdbc:jtds:sqlserver://192.168.0.2/VirtualDatabase |
| Active transactions      |
0                                                 |
| Pending Requests         |
0                                                 |
| Read Enabled             |
false                                             |
| Write Enabled            |
false                                             |
| Is Initialized           |
true                                              |
| Static Schema            |
false                                             |
| Connection Managers      |
1                                                 |
| Total Active Connections |
0                                                 |
| Persistent Connections   |
0                                                 |
| Total Requests           |
0                                                 |
| Total Transactions       |
0                                                 |
| Last known checkpoint    |
<unknown>                                         |
+--------------------------+---------------------------------------------------+

15:47:21,312 DEBUG controller.jmx.AuthenticatingMBeanServer no
authentication required
15:47:21,328 DEBUG controller.jmx.AuthenticatingMBeanServer no
authentication required
15:47:36,328 DEBUG controller.jmx.AuthenticatingMBeanServer no
authentication required
15:47:36,343 DEBUG controller.jmx.AuthenticatingMBeanServer no
authentication required
15:47:36,343 DEBUG controller.jmx.AuthenticatingMBeanServer Authentication
with principal was successfull
15:48:04,531 DEBUG controller.jmx.AuthenticatingMBeanServer no
authentication required
15:48:04,546 DEBUG controller.jmx.AuthenticatingMBeanServer no
authentication required
15:48:04,546 DEBUG controller.jmx.AuthenticatingMBeanServer Authentication
with principal was successfull
15:48:04,546 DEBUG sequoia.controller.recoverylog Retrieving dump init_dump
information
15:48:04,546 DEBUG backend.DatabaseBackend.mainPCDB Database backend
mainPCDB is now in state sequoia.virtualdatabase.backend.recovering
15:48:05,203 DEBUG backup.backupers.MSSQLBackuper Restoring
jdbc:jtds:sqlserver://192.168.0.2/VirtualDatabase from \tmp\init_dump
15:48:08,000 DEBUG backend.DatabaseBackend.mainPCDB Database backend
mainPCDB is now in state sequoia.virtualdatabase.backend.disabled
15:48:08,015 INFO  controller.RequestManager.VirtualDatabase Recovery of
backend mainPCDB done.

enable mainPCDB:

15:48:42,984 DEBUG controller.jmx.AuthenticatingMBeanServer no
authentication required
15:48:42,984 DEBUG controller.jmx.AuthenticatingMBeanServer no
authentication required
15:48:43,000 DEBUG controller.jmx.AuthenticatingMBeanServer Authentication
with principal was successfull
15:48:43,000 DEBUG backend.DatabaseBackend.mainPCDB Dynamic schema gathering
level: false
15:48:43,000 DEBUG backend.DatabaseBackend.mainPCDB Gathering database
schema
15:48:43,000 ERROR backend.DatabaseBackend.mainPCDB Unable to get a
connection to gather database schema.
15:48:43,015 WARN  backend.DatabaseBackend.mainPCDB Unable to gather schema
from database meta data: java.sql.SQLException: Failed to get information
about database schema: java.sql.SQLException: Unable to get a connection to
gather database schema.
15:48:43,015 DEBUG backend.DatabaseBackend.mainPCDB Dynamic schema gathering
level: false
15:48:43,031 DEBUG backend.DatabaseBackend.mainPCDB Gathering database
schema
15:48:43,031 ERROR backend.DatabaseBackend.mainPCDB Unable to get a
connection to gather database schema.
15:48:43,031 WARN  backend.DatabaseBackend.mainPCDB Unable to gather schema
from database meta data: java.sql.SQLException: Failed to get information
about database schema: java.sql.SQLException: Unable to get a connection to
gather database schema.
15:48:43,031 WARN  controller.virtualdatabase.VirtualDatabase Backend
mainPCDB has no defined schema.
15:48:43,031 DEBUG backend.DatabaseBackend.mainPCDB Database backend
mainPCDB is now in state sequoia.virtualdatabase.backend.replaying
15:48:43,046 DEBUG controller.jmx.MBeanServer Total number of MBeans
registered: 28

Hanging................


Version of Sequoia: 3.0 beta 2
Database: MS SQL Server 2005 Express Edition
OS: Windows XP SP2
JVM version: 1.6
One controller with one backend

I have tested issue in the configuration with only one controller, because I
can't transfer dump.
I'll post details about that problem to sequoia community in my next letter.

Configuration files:
Controller:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE SEQUOIA-CONTROLLER PUBLIC "-//Continuent//DTD SEQUOIA-CONTROLLER
@VERSION@//EN"  "C:/sequoia/xml/sequoia-controller-3.0-beta2.dtd">
<SEQUOIA-CONTROLLER>
 <Controller name="mainPCController" jdbcIpAddress="192.168.0.2"
jdbcPort="25322">
   <JmxSettings jmxIpAddress="192.168.0.2" jmxPort="1090"/>
   <VirtualDatabaseAutoLoad configFile="Xml/pcDB.xml"
virtualDatabaseName="VirtualDatabase" autoEnableBackends="true"/>
 </Controller>
</SEQUOIA-CONTROLLER>

Virtual database:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE SEQUOIA SYSTEM "C:/sequoia/xml/sequoia-3.0-beta2.dtd">


<SEQUOIA>

 <VirtualDatabase name="VirtualDatabase">
   <Distribution>
   <MessageTimeouts/>
   </Distribution>

   <Backup>
     <Backuper backuperName="MSSQLServer" className="
org.continuent.sequoia.controller.backup.backupers.MSSQLBackuper"/>
 </Backup>

  <AuthenticationManager>
     <AdminUser username="admin" password=""/>
     <VirtualUser vLogin="sa" vPassword="1"/>
   </AuthenticationManager>

   <DatabaseBackend name="mainPCDB"
                    driver="net.sourceforge.jtds.jdbc.Driver"
                    url="jdbc:jtds:sqlserver://192.168.0.2/VirtualDatabase"

                    connectionTestStatement="SELECT 1">
     <ConnectionManager vLogin="sa"
                        rLogin="sa"
                        rPassword="1">
       <VariablePoolConnectionManager
           initPoolSize="10"
           minPoolSize="5"
           maxPoolSize="50"
           idleTimeout="30"
           waitTimeout="30"/>
     </ConnectionManager>
   </DatabaseBackend>

       <DatabaseSchema/>

     <RequestManager>
         <RequestScheduler>
             <RAIDb-1Scheduler level="passThrough"/>
         </RequestScheduler>

         <RequestCache>
             <MetadataCache/>
             <ParsingCache/>
             <!--       <ResultCache granularity="table"/> -->
         </RequestCache>

         <LoadBalancer>
             <RAIDb-1>
                 <WaitForCompletion policy="first"/>
                 <RAIDb-1-LeastPendingRequestsFirst/>
             </RAIDb-1>
         </LoadBalancer>

         <EmbeddedRecoveryLog/>
     </RequestManager>
 </VirtualDatabase>

</SEQUOIA>

--
Best regards,
Denis Garyachy.
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia

Reply via email to