forked from Qortal/qortal
7f4511cb7b
Some pom.xml changes to reduce maven-shade-plugin conflicting classes warnings. Repository now supports SAVEPOINT and ROLLBACK TO SAVEPOINT. HSQLDB concurrency/transaction model changed from LOCKS to MVCC to help with transaction deadlocks/rollbacks. More XXXs and TODOs added to Block.java for investigation/fix/improvements. Also used new repository SAVEPOINT feature when validating transactions instead of rolling back entire transaction. This fixes problem during synchronization where the rollback would undo previously synchronized, but not yet committed, blocks! Transactions orphaned by Block.orphan ARE now added to unconfirmed pile, unlike before. Concurrent lock now prevents simultaneous block generation and synchronization, including synchronization via multiple peers. Lots of new networking code: peer lists, block signatures, blocks, blockchain synchronization. PEERS_V2 message now supports hostnames, IPv6 and port numbers. Fixed bug with block serialization for transport over network.
57 lines
2.0 KiB
Properties
57 lines
2.0 KiB
Properties
rootLogger.level = info
|
|
# On Windows, this might be rewritten as:
|
|
# property.filename = ${sys:user.home}\\AppData\\Roaming\\Qora\\log.txt
|
|
property.filename = log.txt
|
|
|
|
rootLogger.appenderRef.console.ref = stdout
|
|
rootLogger.appenderRef.rolling.ref = FILE
|
|
|
|
# Override HSQLDB logging level to "warn" as too much is logged at "info"
|
|
logger.hsqldb.name = hsqldb.db
|
|
logger.hsqldb.level = warn
|
|
|
|
# Support optional, per-session HSQLDB debugging
|
|
logger.hsqldbDebug.name = org.qora.repository.hsqldb.HSQLDBRepository
|
|
logger.hsqldbDebug.level = debug
|
|
|
|
# Suppress extraneous Jersey warning
|
|
logger.jerseyInject.name = org.glassfish.jersey.internal.inject.Providers
|
|
logger.jerseyInject.level = error
|
|
|
|
# Debugging transaction searches
|
|
logger.txSearch.name = org.qora.repository.hsqldb.transaction.HSQLDBTransactionRepository
|
|
logger.txSearch.level = trace
|
|
|
|
# Debug block generator
|
|
logger.blockgen.name = org.qora.block.BlockGenerator
|
|
logger.blockgen.level = trace
|
|
|
|
# Debug synchronization
|
|
logger.sync.name = org.qora.controller.Synchronizer
|
|
logger.sync.level = trace
|
|
|
|
# Debug networking
|
|
logger.network.name = org.qora.network.Network
|
|
logger.network.level = trace
|
|
logger.peer.name = org.qora.network.Peer
|
|
logger.peer.level = trace
|
|
|
|
appender.console.type = Console
|
|
appender.console.name = stdout
|
|
appender.console.layout.type = PatternLayout
|
|
appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
|
|
appender.console.filter.threshold.type = ThresholdFilter
|
|
appender.console.filter.threshold.level = error
|
|
|
|
appender.rolling.type = RollingFile
|
|
appender.rolling.name = FILE
|
|
appender.rolling.layout.type = PatternLayout
|
|
appender.rolling.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
|
|
appender.rolling.filePattern = ${filename}.%i
|
|
appender.rolling.policy.type = SizeBasedTriggeringPolicy
|
|
appender.rolling.policy.size = 4MB
|
|
# Set the immediate flush to true (default)
|
|
# appender.rolling.immediateFlush = true
|
|
# Set the append to true (default), should not overwrite
|
|
# appender.rolling.append=true
|