Same here happen since 1.6.1.8 including newest 1.6.1.9
commented out line 909 in classes/ObjectModel.php works for me but not sure if this break something or not
<style>
#psException{font-family: Verdana; font-size: 14px}
#psException h2{color: #F20000}
#psException p{padding-left: 20px}
#psException ul li{margin-bottom: 10px}
#psException a{font-size: 12px; color: #000000}
#psException .psTrace, #psException .psArgs{display: none}
#psException pre{border: 1px solid #236B04; background-color: #EAFEE1; padding: 5px; font-family: Courier; width: 99%; overflow-x: auto; margin-bottom: 30px;}
#psException .psArgs pre{background-color: #F1FDFE;}
#psException pre .selected{color: #F20000; font-weight: bold;}
</style><div id="psException"><h2>[PrestaShopException]</h2><p><b>Property PrestaShopLogger->message is empty</b><br /><i>at line </i><b>909</b><i> in file </i><b>classes/ObjectModel.php</b></p><div class="psTrace" id="psTrace_" style="display: block"><pre>904. }
905.
906. $message = $this->validateField($field, $this->$field);
907. if ($message !== true) {
908. if ($die) {
<span class="selected">909. throw new PrestaShopException($message);
</span>910. }
911. return $error_return ? $message : false;
912. }
913. }
914.
</pre></div><ul><li><b>ObjectModelCore->validateFields</b> - <a style="font-size: 12px; color: #000000; cursor:pointer; color: blue;" onclick="document.getElementById('psTrace_0').style.display = (document.getElementById('psTrace_0').style.display != 'block') ? 'block' : 'none'; return false">[line 246 - classes/ObjectModel.php]</a><div class="psTrace" id="psTrace_0" ><pre>241. * @return array All object fields
242. * @throws PrestaShopException
243. */
244. public function getFields()
245. {
<span class="selected">246. $this->validateFields();
</span>247. $fields = $this->formatFields(self::FORMAT_COMMON);
248.
249. // For retro compatibility
250. if (Shop::isTableAssociated($this->def['table'])) {
251. $fields = array_merge($fields, $this->getFieldsShop());
</pre></div></li><li><b>ObjectModelCore->getFields</b> - <a style="font-size: 12px; color: #000000; cursor:pointer; color: blue;" onclick="document.getElementById('psTrace_1').style.display = (document.getElementById('psTrace_1').style.display != 'block') ? 'block' : 'none'; return false">[line 487 - classes/ObjectModel.php]</a><div class="psTrace" id="psTrace_1" ><pre>482.
483. // Database insertion
484. if (Shop::checkIdShopDefault($this->def['table'])) {
485. $this->id_shop_default = (in_array(Configuration::get('PS_SHOP_DEFAULT'), $id_shop_list) == true) ? Configuration::get('PS_SHOP_DEFAULT') : min($id_shop_list);
486. }
<span class="selected">487. if (!$result = Db::getInstance()->insert($this->def['table'], $this->getFields(), $null_values)) {
</span>488. return false;
489. }
490.
491. // Get object id in database
492. $this->id = Db::getInstance()->Insert_ID();
</pre></div></li><li><b>ObjectModelCore->add</b> - <a style="font-size: 12px; color: #000000; cursor:pointer; color: blue;" onclick="document.getElementById('psTrace_2').style.display = (document.getElementById('psTrace_2').style.display != 'block') ? 'block' : 'none'; return false">[line 133 - classes/PrestaShopLogger.php]</a><div class="psTrace" id="psTrace_2" ><pre>128. if ($object_type != 'Swift_Message') {
129. PrestaShopLogger::sendByMail($log);
130. }
131.
132. if ($allow_duplicate || !$log->_isPresent()) {
<span class="selected">133. $res = $log->add();
</span>134. if ($res) {
135. self::$is_present[$log->getHash()] = isset(self::$is_present[$log->getHash()])?self::$is_present[$log->getHash()] + 1:1;
136. return true;
137. }
138. }
</pre></div></li><li><b>PrestaShopLoggerCore::addLog</b> - <a style="font-size: 12px; color: #000000; cursor:pointer; color: blue;" onclick="document.getElementById('psTrace_3').style.display = (document.getElementById('psTrace_3').style.display != 'block') ? 'block' : 'none'; return false">[line 196 - controllers/admin/AdminLoginController.php]</a> - <a style="font-size: 12px; color: #000000; cursor:pointer; color: blue;" onclick="document.getElementById('psArgs_3').style.display = (document.getElementById('psArgs_3').style.display != 'block') ? 'block' : 'none'; return false">[7 Arguments]</a><div class="psTrace" id="psTrace_3" ><pre>191. $this->context->employee->logout();
192. } elseif (empty($employee_associated_shop) && !$this->context->employee->isSuperAdmin()) {
193. $this->errors[] = Tools::displayError('This employee does not manage the shop anymore (Either the shop has been deleted or permissions have been revoked).');
194. $this->context->employee->logout();
195. } else {
<span class="selected">196. PrestaShopLogger::addLog(sprintf($this->l('Back Office connection from %s', 'AdminTab', false, false), Tools::getRemoteAddr()), 1, null, '', 0, true, (int)$this->context->employee->id);
</span>197.
198. $this->context->employee->remote_addr = (int)ip2long(Tools::getRemoteAddr());
199. // Update cookie
200. $cookie = Context::getContext()->cookie;
201. $cookie->id_employee = $this->context->employee->id;
</pre></div><div class="psArgs" id="psArgs_3"><pre><b>Argument [0]</b>
<b>Argument [1]</b>
1
<b>Argument [2]</b>
<b>Argument [3]</b>
<b>Argument [4]</b>
0
<b>Argument [5]</b>
1
<b>Argument [6]</b>
1
</pre></li><li><b>AdminLoginControllerCore->processLogin</b> - <a style="font-size: 12px; color: #000000; cursor:pointer; color: blue;" onclick="document.getElementById('psTrace_4').style.display = (document.getElementById('psTrace_4').style.display != 'block') ? 'block' : 'none'; return false">[line 161 - controllers/admin/AdminLoginController.php]</a><div class="psTrace" id="psTrace_4" ><pre>156. }
157.
158. public function postProcess()
159. {
160. if (Tools::isSubmit('submitLogin')) {
<span class="selected">161. $this->processLogin();
</span>162. } elseif (Tools::isSubmit('submitForgot')) {
163. $this->processForgot();
164. }
165. }
166.
</pre></div></li><li><b>AdminLoginControllerCore->postProcess</b> - <a style="font-size: 12px; color: #000000; cursor:pointer; color: blue;" onclick="document.getElementById('psTrace_5').style.display = (document.getElementById('psTrace_5').style.display != 'block') ? 'block' : 'none'; return false">[line 178 - classes/controller/Controller.php]</a><div class="psTrace" id="psTrace_5" ><pre>173. if (!$this->content_only && ($this->display_header || (isset($this->className) && $this->className))) {
174. $this->setMedia();
175. }
176.
177. // postProcess handles ajaxProcess
<span class="selected">178. $this->postProcess();
</span>179.
180. if (!empty($this->redirect_after)) {
181. $this->redirect();
182. }
183.
</pre></div></li><li><b>ControllerCore->run</b> - <a style="font-size: 12px; color: #000000; cursor:pointer; color: blue;" onclick="document.getElementById('psTrace_6').style.display = (document.getElementById('psTrace_6').style.display != 'block') ? 'block' : 'none'; return false">[line 367 - classes/Dispatcher.php]</a><div class="psTrace" id="psTrace_6" ><pre>362. if (isset($params_hook_action_dispatcher)) {
363. Hook::exec('actionDispatcher', $params_hook_action_dispatcher);
364. }
365.
366. // Running controller
<span class="selected">367. $controller->run();
</span>368. } catch (PrestaShopException $e) {
369. $e->displayMessage();
370. }
371. }
372.
</pre></div></li><li><b>DispatcherCore->dispatch</b> - <a style="font-size: 12px; color: #000000; cursor:pointer; color: blue;" onclick="document.getElementById('psTrace_7').style.display = (document.getElementById('psTrace_7').style.display != 'block') ? 'block' : 'none'; return false">[line 47 - admin/ajax-tab.php]</a><div class="psTrace" id="psTrace_7" ><pre>42. $_REQUEST['controller'] = strtolower($_REQUEST['tab']);
43. }
44. // Retrocompatibility with 1.4
45. $_REQUEST['ajaxMode'] = $_POST['ajaxMode'] = $_GET['ajaxMode'] = $_REQUEST['ajax'] = $_POST['ajax'] = $_GET['ajax'] = 1;
46.
<span class="selected">47. Dispatcher::getInstance()->dispatch();
</span></pre></div></li></ul></div>