]> source.dussan.org Git - nextcloud-server.git/commitdiff
add debug output
authorJörn Friedrich Dreyer <jfd@butonic.de>
Mon, 29 Apr 2013 10:25:27 +0000 (12:25 +0200)
committerJörn Friedrich Dreyer <jfd@butonic.de>
Wed, 22 May 2013 11:59:07 +0000 (13:59 +0200)
lib/app.php
lib/db.php
lib/files/cache/cache.php
lib/setup.php
lib/user.php
lib/user/database.php

index 55b4543ec9f874b0085a9118eb7334748c1f06c0..0a7069ca60cf1d563ef004827459490bbd0a086b 100644 (file)
@@ -173,8 +173,11 @@ class OC_App{
                }
                $apps=array('files');
                $query = OC_DB::prepare( 'SELECT `appid` FROM `*PREFIX*appconfig`'
-                       .' WHERE `configkey` = \'enabled\' AND `configvalue`=\'yes\'' );
+                       .' WHERE `configkey` = \'enabled\' AND to_char(`configvalue`)=\'yes\'' );
                $result=$query->execute();
+               if( \OC_DB::isError($result)) {
+                       throw new DatabaseException($result->getMessage(), $query);
+               }
                while($row=$result->fetchRow()) {
                        if(array_search($row['appid'], $apps)===false) {
                                $apps[]=$row['appid'];
index 8f6f50bda6e3c51738586b55e4f6512d48a164c2..5b45f81f99885c58167d3fd3eabad4e2b0127caa 100644 (file)
@@ -276,15 +276,10 @@ class OC_DB {
                                                        'phptype'  => 'oci8',
                                                        'username' => $user,
                                                        'password' => $pass,
+                                                       'service'  => $name,
+                                                       'hostspec' => $host,
                                                        'charset' => 'AL32UTF8',
                                        );
-                                       if ($host != '') {
-                                               $dsn['hostspec'] = $host;
-                                               $dsn['database'] = $name;
-                                       } else { // use dbname for hostspec
-                                               $dsn['hostspec'] = $name;
-                                               $dsn['database'] = $user;
-                                       }
                                        break;
                                case 'mssql':
                                        $dsn = array(
index 0617471079b789fe53cfdfa380c70ac8b4a73ea8..adffe766ddd712172193b1b6a5d92f0275d228da 100644 (file)
@@ -145,8 +145,11 @@ class Cache {
                if ($fileId > -1) {
                        $query = \OC_DB::prepare(
                                'SELECT `fileid`, `storage`, `path`, `parent`, `name`, `mimetype`, `mimepart`, `size`, `mtime`, `storage_mtime`, `encrypted`, `etag`
-                                FROM `*PREFIX*filecache` WHERE parent = ? ORDER BY `name` ASC');
+                                FROM `*PREFIX*filecache` WHERE `parent` = ? ORDER BY `name` ASC');
                        $result = $query->execute(array($fileId));
+                       if (\OC_DB::isError($result)) {
+                               \OCP\Util::writeLog('cache', 'getFolderContents failed: '.$result->getMessage(), \OCP\Util::ERROR);
+                       }
                        $files = $result->fetchAll();
                        foreach ($files as &$file) {
                                $file['mimetype'] = $this->getMimetype($file['mimetype']);
@@ -201,7 +204,7 @@ class Cache {
                                . ' VALUES(' . implode(', ', $valuesPlaceholder) . ')');
                        $result = $query->execute($params);
                        if (\OC_DB::isError($result)) {
-                               \OCP\Util::writeLog('cache', 'Insert to cache failed: ' . $result, \OCP\Util::ERROR);
+                               \OCP\Util::writeLog('cache', 'Insert to cache failed: ' . $result->getMessage(), \OCP\Util::ERROR);
                        }
 
                        return (int)\OC_DB::insertid('*PREFIX*filecache');
@@ -372,6 +375,9 @@ class Cache {
                $pathHash = md5($file);
                $query = \OC_DB::prepare('SELECT `size` FROM `*PREFIX*filecache` WHERE `storage` = ? AND `path_hash` = ?');
                $result = $query->execute(array($this->getNumericStorageId(), $pathHash));
+               if( \OC_DB::isError($result)) {
+                       \OCP\Util::writeLog('cache', 'get status failed: '.$result->getMessage(), \OCP\Util::ERROR);
+               }
                if ($row = $result->fetchRow()) {
                        if ((int)$row['size'] === -1) {
                                return self::SHALLOW;
@@ -509,8 +515,11 @@ class Cache {
         */
        public function getIncomplete() {
                $query = \OC_DB::prepare('SELECT `path` FROM `*PREFIX*filecache`'
-                       . ' WHERE `storage` = ? AND `size` = -1 ORDER BY `fileid` DESC LIMIT 1');
+                       . ' WHERE `storage` = ? AND `size` = -1 ORDER BY `fileid` DESC',1);
                $result = $query->execute(array($this->getNumericStorageId()));
+               if (\OC_DB::isError($result)) {
+                       \OCP\Util::writeLog('cache', 'getIncomplete failed: '.$result->getMessage(), \OCP\Util::ERROR);
+               }
                if ($row = $result->fetchRow()) {
                        return $row['path'];
                } else {
index f1ac6b8b2b81c610d4135427d7cdccbfaec93d45..6f608ec5fb14b737b95db147bcc4e5ebdada1c0c 100644 (file)
@@ -152,8 +152,12 @@ class OC_Setup {
                                        self::setupOCIDatabase($dbhost, $dbuser, $dbpass, $dbname, $dbtableprefix, $dbtablespace, $username);
                                } catch (Exception $e) {
                                        $error[] = array(
-                                               'error' => $l->t('Oracle username and/or password not valid'),
-                                               'hint' => $l->t('You need to enter either an existing account or the administrator.')
+                                               'error' => $l->t('Oracle connection could not be established'),
+                                               'hint' => $e->getMessage().' Check environment: ORACLE_HOME='.getenv('ORACLE_HOME')
+                                                       .' ORACLE_SID='.getenv('ORACLE_SID')
+                                                       .' LD_LIBRARY_PATH='.getenv('LD_LIBRARY_PATH')
+                                                       .' NLS_LANG='.getenv('NLS_LANG')
+                                                       .' tnsnames.ora is '.(is_readable(getenv('ORACLE_HOME').'/network/admin/tnsnames.ora')?'':'not ').'readable'
                                        );
                                        return $error;
                                }
@@ -452,9 +456,13 @@ class OC_Setup {
                } else {
                        $easy_connect_string = '//'.$e_host.'/'.$e_dbname;
                }
+               \OC_Log::write('setup oracle', 'connect string: '.$easy_connect_string, \OC_Log::DEBUG);
                $connection = @oci_connect($dbuser, $dbpass, $easy_connect_string);
                if(!$connection) {
                        $e = oci_error();
+                       if (is_array ($e) && isset ($e['message'])) {
+                               throw new Exception($e['message']);
+                       }
                        throw new Exception($l->t('Oracle username and/or password not valid'));
                }
                //check for roles creation rights in oracle
index b607874afafc2b699effc31d545fca28a2822f98..78f5edfb5f6daf4b444ce12087dfb1ed22d41f3e 100644 (file)
@@ -609,7 +609,7 @@ class OC_User {
         */
        public static function isEnabled($userid) {
                $sql = 'SELECT `userid` FROM `*PREFIX*preferences`'
-                       .' WHERE `userid` = ? AND `appid` = ? AND `configkey` = ? AND `configvalue` = ?';
+                       .' WHERE `userid` = ? AND `appid` = ? AND `configkey` = ? AND to_char(`configvalue`) = ?';
                $stmt = OC_DB::prepare($sql);
                if ( ! OC_DB::isError($stmt) ) {
                        $result = $stmt->execute(array($userid, 'core', 'enabled', 'false'));
index 63c64ed43d393157ff2abb6635d3bdc5b2b26f03..d70b620f2abf055d9fd102fd36930bdce474f16f 100644 (file)
@@ -136,7 +136,7 @@ class OC_User_Database extends OC_User_Backend {
         */
        public function getDisplayName($uid) {
                if( $this->userExists($uid) ) {
-                       $query = OC_DB::prepare( 'SELECT displayname FROM `*PREFIX*users` WHERE `uid` = ?' );
+                       $query = OC_DB::prepare( 'SELECT `displayname` FROM `*PREFIX*users` WHERE `uid` = ?' );
                        $result = $query->execute( array( $uid ))->fetchAll();
                        $displayName = trim($result[0]['displayname'], ' ');
                        if ( !empty($displayName) ) {