コード例 #1
0
    def shutdown(self):
        self.shutdownEvt.wait()
        self.logger.info('Initiating shutdown...')

        # stop services
        self.logger.info('Stopping services...')
        for service in [x for x in self.services.values()
                        if x is not self]:
            service.shutdown()

        self.running = False
        
        # shutdown session manager
        if SessionManager.sm:
            self.logger.info('Closing session manager...')
            SessionManager.close()
        
        # close database
        if _db.db_handle:
            self.logger.info('Closing database...')
            _db.close()

        self.logger.info('All services have been shut down successfully')
        # shutdown logging
        logging.shutdown()
        self.shutdowninprogress = False
コード例 #2
0
 def executeCommand(self, cmd, request):        
     #DB maintenance commands
     try:
         if cmd=='DB_BACKUP':
             output_file = request.data
             try:
                 _db.lock()
                 backfiles = _db.db_handle._backup(output_file)
             finally:
                 _db.unlock()
             return (0, 'Database backup completed successfully.')
         
         elif cmd=='DB_RESTORE':
             backup_set = request.data
             _db.db_handle._restore(backup_set)
             return (0, 'Database restore completed successfully.')
 
         elif cmd=='DB_RECOVER':
             _db.close()
             _db._recover()
             return (0, 'Database recovery completed successfully.')
         
         elif cmd=='DB_SHRINK':
             iLogs = _db.db_handle._shrink()
             if iLogs:
                 return (0, 'Successfully removed %d log files.' % iLogs)
             else:
                 return (0, 'No log files removed.')
         
         # unknown command
         else:
             logger.warning(
                 'Management service received unknown command: %s' % cmd)
             return (-1, 'Unknown command.')
     except IOError:
         return (-1, 'Invalid file path.')
     except NotImplementedError:
         return (-1, 'Unsupported command.')
コード例 #3
0
    app._created = ftime
    app.modified = ftime
    app.launchUrl.value = 'usermgmnt/usermgmnt.quix'
    app.icon.value = 'usermgmnt/images/icon.gif'
    app.inheritRoles = False
    app.security = {'administrators': 8}
    _db.putItem(app, None)
    sys.stdout.write('[OK]\n')

    sys.stdout.write('Creating OQL Query Performer application...')
    app = org.innoscript.desktop.schema.common.Application()
    app._id = 'oqlqueryperf'
    app._parentid = 'apps'
    app.displayName.value = 'OQL Query Performer'
    app._isSystem = True
    app._owner = sOwner
    app.modifiedBy = sOwner
    app._created = ftime
    app.modified = ftime
    app.launchUrl.value = 'queryperformer/queryperformer.quix'
    app.icon.value = 'queryperformer/images/icon.gif'
    app.inheritRoles = False
    app.security = {'administrators': 8}
    _db.putItem(app, None)
    sys.stdout.write('[OK]\n')

    _db.close()
    sys.stdout.write('Store initialization completed successfully.\n')

    sys.exit()
コード例 #4
0
ファイル: offlinedb.py プロジェクト: tkouts/porcupine
def close():
    _db.close(clear_env=True)
コード例 #5
0
def close_db():
    _db.close()
コード例 #6
0
def close():
    _db.close()
コード例 #7
0
ファイル: runtime.py プロジェクト: vagmits/porcupine
def close_db():
    _db.close()
コード例 #8
0
def close():
    SessionManager.close()
    _db.close()