View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
16049 | Bug reports | Import/Export | public | 2020-03-26 17:03 | 2021-02-08 17:09 |
Reporter | andreicad | Assigned To | ollehar | ||
Priority | none | Severity | crash | ||
Status | closed | Resolution | unable to reproduce | ||
Product Version | 4.1.13 | ||||
Summary | 16049: Importing survey (LSS) fails with: SQLSTATE[23505]: Unique violation: 7 ERROR: duplicate key value violates unique constraint "g | ||||
Description | Using LimeSurvey 4.1.13 (Git commit ec14631bbdb34be768d56487761c96cc4931b748) | ||||
Steps To Reproduce | Export existing survey to LSS file. Expected results: the survey is imported correctly. Observed results: the import fails with a message similar to: Note: it makes no difference whether the option 'Convert resource links and expression fields?' is enabled or not. The import fails the same way in either case. | ||||
Additional Information | Enabling debug=2 and debugsql=1, the attached report was obtained (CDBException.html). | ||||
Tags | No tags attached. | ||||
Attached Files | CDbException.htm (25,284 bytes)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>CDbException</title> <style type="text/css"> /*<![CDATA[*/ html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0;} body{line-height:1;} ol,ul{list-style:none;} blockquote,q{quotes:none;} blockquote:before,blockquote:after,q:before,q:after{content:none;} :focus{outline:0;} ins{text-decoration:none;} del{text-decoration:line-through;} table{border-collapse:collapse;border-spacing:0;} body { font: normal 9pt "Verdana"; color: #000; background: #fff; } h1 { font: normal 18pt "Verdana"; color: #f00; margin-bottom: .5em; } h2 { font: normal 14pt "Verdana"; color: #800000; margin-bottom: .5em; } h3 { font: bold 11pt "Verdana"; } pre { font: normal 11pt Menlo, Consolas, "Lucida Console", Monospace; } pre span.error { display: block; background: #fce3e3; } pre span.ln { color: #999; padding-right: 0.5em; border-right: 1px solid #ccc; } pre span.error-ln { font-weight: bold; } .container { margin: 1em 4em; } .version { color: gray; font-size: 8pt; border-top: 1px solid #aaa; padding-top: 1em; margin-bottom: 1em; } .message { color: #000; padding: 1em; font-size: 11pt; background: #f3f3f3; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; margin-bottom: 1em; line-height: 160%; } .source { margin-bottom: 1em; } .code pre { background-color: #ffe; margin: 0.5em 0; padding: 0.5em; line-height: 125%; border: 1px solid #eee; } .source .file { margin-bottom: 1em; font-weight: bold; } .traces { margin: 2em 0; } .trace { margin: 0.5em 0; padding: 0.5em; } .trace.app { border: 1px dashed #c00; } .trace .number { text-align: right; width: 2em; padding: 0.5em; } .trace .content { padding: 0.5em; } .trace .plus, .trace .minus { display:inline; vertical-align:middle; text-align:center; border:1px solid #000; color:#000; font-size:10px; line-height:10px; margin:0; padding:0 1px; width:10px; height:10px; } .trace.collapsed .minus, .trace.expanded .plus, .trace.collapsed pre { display: none; } .trace-file { cursor: pointer; padding: 0.2em; } .trace-file:hover { background: #f0ffff; } /*]]>*/ </style> </head> <body> <div class="container"> <h1>CDbException</h1> <p class="message"> CDbCommand failed to execute the SQL statement: SQLSTATE[23505]: Unique violation: 7 ERROR: duplicate key value violates unique constraint "groups_pkey"<br> DETAIL: Key (gid)=(32) already exists.. The SQL statement executed was: INSERT INTO "groups" ("sid", "group_order", "randomization_group", "grelevance") VALUES (:yp0, :yp1, :yp2, :yp3). Bound with :yp0=445325, :yp1=2, :yp2='', :yp3='' </p> <div class="source"> <p class="file">/var/www/html/sg_survey/framework/db/CDbCommand.php(358)</p> <div class="code"><pre><span class="ln">346</span> { <span class="ln">347</span> if($this->_connection->enableProfiling) <span class="ln">348</span> Yii::endProfile('system.db.CDbCommand.execute('.$this->getText().$par.')','system.db.CDbCommand.execute'); <span class="ln">349</span> <span class="ln">350</span> $errorInfo=$e instanceof PDOException ? $e->errorInfo : null; <span class="ln">351</span> $message=$e->getMessage(); <span class="ln">352</span> Yii::log(Yii::t('yii','CDbCommand::execute() failed: {error}. The SQL statement executed was: {sql}.', <span class="ln">353</span> array('{error}'=>$message, '{sql}'=>$this->getText().$par)),CLogger::LEVEL_ERROR,'system.db.CDbCommand'); <span class="ln">354</span> <span class="ln">355</span> if(YII_DEBUG) <span class="ln">356</span> $message.='. The SQL statement executed was: '.$this->getText().$par; <span class="ln">357</span> <span class="error"><span class="ln error-ln">358</span> throw new CDbException(Yii::t('yii','CDbCommand failed to execute the SQL statement: {error}', </span><span class="ln">359</span> array('{error}'=>$message)),(int)$e->getCode(),$errorInfo); <span class="ln">360</span> } <span class="ln">361</span> } <span class="ln">362</span> <span class="ln">363</span> /** <span class="ln">364</span> * Executes the SQL statement and returns query result. <span class="ln">365</span> * This method is for executing an SQL query that returns result set. <span class="ln">366</span> * @param array $params input parameters (name=>value) for the SQL execution. This is an alternative <span class="ln">367</span> * to {@link bindParam} and {@link bindValue}. If you have multiple input parameters, passing <span class="ln">368</span> * them in this way can improve the performance. Note that if you pass parameters in this way, <span class="ln">369</span> * you cannot bind parameters or values using {@link bindParam} or {@link bindValue}, and vice versa. <span class="ln">370</span> * Please also note that all values are treated as strings in this case, if you need them to be handled as </pre></div> </div> <div class="traces"> <h2>Stack Trace</h2> <table style="width:100%;"> <tbody><tr class="trace core collapsed"> <td class="number"> #0 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/framework/db/ar/CActiveRecord.php(1083): <strong>CDbCommand</strong>-><strong>execute</strong>() </div> <div class="code"><pre><span class="ln">1078</span> { <span class="ln">1079</span> Yii::trace(get_class($this).'.insert()','system.db.ar.CActiveRecord'); <span class="ln">1080</span> $builder=$this->getCommandBuilder(); <span class="ln">1081</span> $table=$this->getTableSchema(); <span class="ln">1082</span> $command=$builder->createInsertCommand($table,$this->getAttributes($attributes)); <span class="error"><span class="ln error-ln">1083</span> if($command->execute()) </span><span class="ln">1084</span> { <span class="ln">1085</span> $primaryKey=$table->primaryKey; <span class="ln">1086</span> if($table->sequenceName!==null) <span class="ln">1087</span> { <span class="ln">1088</span> if(is_string($primaryKey) && $this->$primaryKey===null) </pre></div> </td> </tr> <tr class="trace core collapsed"> <td class="number"> #1 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/framework/db/ar/CActiveRecord.php(811): <strong>CActiveRecord</strong>-><strong>insert</strong>(null) </div> <div class="code"><pre><span class="ln">806</span> * @return boolean whether the saving succeeds <span class="ln">807</span> */ <span class="ln">808</span> public function save($runValidation=true,$attributes=null) <span class="ln">809</span> { <span class="ln">810</span> if(!$runValidation || $this->validate($attributes)) <span class="error"><span class="ln error-ln">811</span> return $this->getIsNewRecord() ? $this->insert($attributes) : $this->update($attributes); </span><span class="ln">812</span> else <span class="ln">813</span> return false; <span class="ln">814</span> } <span class="ln">815</span> <span class="ln">816</span> /** </pre></div> </td> </tr> <tr class="trace app expanded"> <td class="number"> #2 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/application/helpers/admin/import_helper.php(1510): <strong>CActiveRecord</strong>-><strong>save</strong>() </div> <div class="code"><pre><span class="ln">1505</span> } <span class="ln">1506</span> if (!isset($aGIDReplacements[$oldgid])) { <span class="ln">1507</span> $questionGroup = new QuestionGroup(); <span class="ln">1508</span> $questionGroup->attributes = $insertdata; <span class="ln">1509</span> $questionGroup->sid = $iNewSID; <span class="error"><span class="ln error-ln">1510</span> if (!$questionGroup->save()) { </span><span class="ln">1511</span> safeDie(gT("Error").": Failed to insert data [3]<br />"); <span class="ln">1512</span> } <span class="ln">1513</span> $newgid = $questionGroup->gid; <span class="ln">1514</span> $aGIDReplacements[$oldgid] = $newgid; // add old and new qid to the mapping array <span class="ln">1515</span> $results['groups']++; </pre></div> </td> </tr> <tr class="trace app expanded"> <td class="number"> #3 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/application/helpers/admin/import_helper.php(1206): <strong>XMLImportSurvey</strong>("/var/www/html/sg_survey/tmp/6xdpwuc5yxd8g7dcw9ge2eptp76ny6.lss", "<?xml version="1.0" encoding="UTF-8"?> <document> <LimeSurveyDo...", null, null, ...) </div> <div class="code"><pre><span class="ln">1201</span> } else { <span class="ln">1202</span> $sExtension = ""; <span class="ln">1203</span> } <span class="ln">1204</span> switch ($sExtension) { <span class="ln">1205</span> case 'lss': <span class="error"><span class="ln error-ln">1206</span> $aImportResults = XMLImportSurvey($sFullFilePath, null, $sNewSurveyName, $DestSurveyID, $bTranslateLinksFields); </span><span class="ln">1207</span> if (!empty($aImportResults['newsid'])) { <span class="ln">1208</span> TemplateConfiguration::checkAndcreateSurveyConfig($aImportResults['newsid']); <span class="ln">1209</span> } <span class="ln">1210</span> return $aImportResults; <span class="ln">1211</span> case 'txt': </pre></div> </td> </tr> <tr class="trace app expanded"> <td class="number"> #4 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/application/controllers/admin/surveyadmin.php(1231): <strong>importSurveyFile</strong>("/var/www/html/sg_survey/tmp/6xdpwuc5yxd8g7dcw9ge2eptp76ny6.lss", true) </div> <div class="code"><pre><span class="ln">1226</span> <span class="ln">1227</span> // Now, we have the survey : start importing <span class="ln">1228</span> Yii::app()->loadHelper('admin/import'); <span class="ln">1229</span> <span class="ln">1230</span> if ($action == 'importsurvey' && !$aData['bFailed']) { <span class="error"><span class="ln error-ln">1231</span> $aImportResults = importSurveyFile($sFullFilepath, (Yii::app()->request->getPost('translinksfields') == '1')); </span><span class="ln">1232</span> if (is_null($aImportResults)) { <span class="ln">1233</span> $aImportResults = array( <span class="ln">1234</span> 'error'=>gT("Unknown error while reading the file, no survey created.") <span class="ln">1235</span> ); <span class="ln">1236</span> } </pre></div> </td> </tr> <tr class="trace core collapsed"> <td class="number"> #5 </td> <td class="content"> <div class="trace-file"> unknown(0): <strong>SurveyAdmin</strong>-><strong>copy</strong>() </div> </td> </tr> <tr class="trace core collapsed"> <td class="number"> #6 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/framework/web/actions/CAction.php(109): <strong>ReflectionMethod</strong>-><strong>invokeArgs</strong>(SurveyAdmin, array()) </div> <div class="code"><pre><span class="ln">104</span> elseif($param->isDefaultValueAvailable()) <span class="ln">105</span> $ps[]=$param->getDefaultValue(); <span class="ln">106</span> else <span class="ln">107</span> return false; <span class="ln">108</span> } <span class="error"><span class="ln error-ln">109</span> $method->invokeArgs($object,$ps); </span><span class="ln">110</span> return true; <span class="ln">111</span> } <span class="ln">112</span> } </pre></div> </td> </tr> <tr class="trace app collapsed"> <td class="number"> #7 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/application/core/Survey_Common_Action.php(86): <strong>CAction</strong>-><strong>runWithParamsInternal</strong>(SurveyAdmin, ReflectionMethod, array("r" => "admin/survey/sa/copy", "sa" => "copy", "sAction" => "importsurvey")) </div> <div class="code"><pre><span class="ln">81</span> $oMethod = new ReflectionMethod($this, $sDefault); <span class="ln">82</span> } <span class="ln">83</span> <span class="ln">84</span> // We're all good to go, let's execute it <span class="ln">85</span> // runWithParamsInternal would automatically get the parameters of the method and populate them as required with the params <span class="error"><span class="ln error-ln">86</span> return parent::runWithParamsInternal($this, $oMethod, $params); </span><span class="ln">87</span> } <span class="ln">88</span> <span class="ln">89</span> /** <span class="ln">90</span> * Some functions have different parameters, which are just an alias of the <span class="ln">91</span> * usual parameters we're getting in the url. This function just populates </pre></div> </td> </tr> <tr class="trace core collapsed"> <td class="number"> #8 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/framework/web/CController.php(308): <strong>Survey_Common_Action</strong>-><strong>runWithParams</strong>(array("r" => "admin/survey/sa/copy", "sa" => "copy", "sAction" => "importsurvey")) </div> <div class="code"><pre><span class="ln">303</span> { <span class="ln">304</span> $priorAction=$this->_action; <span class="ln">305</span> $this->_action=$action; <span class="ln">306</span> if($this->beforeAction($action)) <span class="ln">307</span> { <span class="error"><span class="ln error-ln">308</span> if($action->runWithParams($this->getActionParams())===false) </span><span class="ln">309</span> $this->invalidActionParams($action); <span class="ln">310</span> else <span class="ln">311</span> $this->afterAction($action); <span class="ln">312</span> } <span class="ln">313</span> $this->_action=$priorAction; </pre></div> </td> </tr> <tr class="trace core collapsed"> <td class="number"> #9 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/framework/web/CController.php(286): <strong>CController</strong>-><strong>runAction</strong>(SurveyAdmin) </div> <div class="code"><pre><span class="ln">281</span> * @see runAction <span class="ln">282</span> */ <span class="ln">283</span> public function runActionWithFilters($action,$filters) <span class="ln">284</span> { <span class="ln">285</span> if(empty($filters)) <span class="error"><span class="ln error-ln">286</span> $this->runAction($action); </span><span class="ln">287</span> else <span class="ln">288</span> { <span class="ln">289</span> $priorAction=$this->_action; <span class="ln">290</span> $this->_action=$action; <span class="ln">291</span> CFilterChain::create($this,$action,$filters)->run(); </pre></div> </td> </tr> <tr class="trace core collapsed"> <td class="number"> #10 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/framework/web/CController.php(265): <strong>CController</strong>-><strong>runActionWithFilters</strong>(SurveyAdmin, array()) </div> <div class="code"><pre><span class="ln">260</span> { <span class="ln">261</span> if(($parent=$this->getModule())===null) <span class="ln">262</span> $parent=Yii::app(); <span class="ln">263</span> if($parent->beforeControllerAction($this,$action)) <span class="ln">264</span> { <span class="error"><span class="ln error-ln">265</span> $this->runActionWithFilters($action,$this->filters()); </span><span class="ln">266</span> $parent->afterControllerAction($this,$action); <span class="ln">267</span> } <span class="ln">268</span> } <span class="ln">269</span> else <span class="ln">270</span> $this->missingAction($actionID); </pre></div> </td> </tr> <tr class="trace app collapsed"> <td class="number"> #11 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/application/controllers/AdminController.php(172): <strong>CController</strong>-><strong>run</strong>("survey") </div> <div class="code"><pre><span class="ln">167</span> } <span class="ln">168</span> <span class="ln">169</span> $this->runModuleController($action); <span class="ln">170</span> <span class="ln">171</span> <span class="error"><span class="ln error-ln">172</span> return parent::run($action); </span><span class="ln">173</span> } <span class="ln">174</span> <span class="ln">175</span> /** <span class="ln">176</span> * Starting with LS4, 3rd party developper can extends any of the LimeSurve controllers. <span class="ln">177</span> */ </pre></div> </td> </tr> <tr class="trace core collapsed"> <td class="number"> #12 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/framework/web/CWebApplication.php(282): <strong>AdminController</strong>-><strong>run</strong>("survey") </div> <div class="code"><pre><span class="ln">277</span> { <span class="ln">278</span> list($controller,$actionID)=$ca; <span class="ln">279</span> $oldController=$this->_controller; <span class="ln">280</span> $this->_controller=$controller; <span class="ln">281</span> $controller->init(); <span class="error"><span class="ln error-ln">282</span> $controller->run($actionID); </span><span class="ln">283</span> $this->_controller=$oldController; <span class="ln">284</span> } <span class="ln">285</span> else <span class="ln">286</span> throw new CHttpException(404,Yii::t('yii','Unable to resolve the request "{route}".', <span class="ln">287</span> array('{route}'=>$route===''?$this->defaultController:$route))); </pre></div> </td> </tr> <tr class="trace core collapsed"> <td class="number"> #13 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/framework/web/CWebApplication.php(141): <strong>CWebApplication</strong>-><strong>runController</strong>("admin/survey/sa/copy") </div> <div class="code"><pre><span class="ln">136</span> foreach(array_splice($this->catchAllRequest,1) as $name=>$value) <span class="ln">137</span> $_GET[$name]=$value; <span class="ln">138</span> } <span class="ln">139</span> else <span class="ln">140</span> $route=$this->getUrlManager()->parseUrl($this->getRequest()); <span class="error"><span class="ln error-ln">141</span> $this->runController($route); </span><span class="ln">142</span> } <span class="ln">143</span> <span class="ln">144</span> /** <span class="ln">145</span> * Registers the core application components. <span class="ln">146</span> * This method overrides the parent implementation by registering additional core components. </pre></div> </td> </tr> <tr class="trace core collapsed"> <td class="number"> #14 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/framework/base/CApplication.php(185): <strong>CWebApplication</strong>-><strong>processRequest</strong>() </div> <div class="code"><pre><span class="ln">180</span> public function run() <span class="ln">181</span> { <span class="ln">182</span> if($this->hasEventHandler('onBeginRequest')) <span class="ln">183</span> $this->onBeginRequest(new CEvent($this)); <span class="ln">184</span> register_shutdown_function(array($this,'end'),0,false); <span class="error"><span class="ln error-ln">185</span> $this->processRequest(); </span><span class="ln">186</span> if($this->hasEventHandler('onEndRequest')) <span class="ln">187</span> $this->onEndRequest(new CEvent($this)); <span class="ln">188</span> } <span class="ln">189</span> <span class="ln">190</span> /** </pre></div> </td> </tr> <tr class="trace app collapsed"> <td class="number"> #15 </td> <td class="content"> <div class="trace-file"> <div class="plus">+</div> <div class="minus">–</div> /var/www/html/sg_survey/index.php(182): <strong>CApplication</strong>-><strong>run</strong>() </div> <div class="code"><pre><span class="ln">177</span> require_once APPPATH . 'core/LSYii_Application' . EXT; <span class="ln">178</span> <span class="ln">179</span> $config = require_once(APPPATH . 'config/internal' . EXT); <span class="ln">180</span> <span class="ln">181</span> Yii::$enableIncludePath = false; <span class="error"><span class="ln error-ln">182</span> Yii::createApplication('LSYii_Application', $config)->run(); </span><span class="ln">183</span> <span class="ln">184</span> /* End of file index.php */ <span class="ln">185</span> /* Location: ./index.php */ </pre></div> </td> </tr> </tbody></table> </div> <div class="version"> 2020-03-26 16:34:34 nginx/1.14.0 <a href="http://www.yiiframework.com/">Yii Framework</a>/1.1.22-dev </div> </div> <script type="text/javascript"> /*<![CDATA[*/ var traceReg = new RegExp("(^|\\s)trace-file(\\s|$)"); var collapsedReg = new RegExp("(^|\\s)collapsed(\\s|$)"); var e = document.getElementsByTagName("div"); for(var j=0,len=e.length;j<len;j++){ if(traceReg.test(e[j].className)){ e[j].onclick = function(){ var trace = this.parentNode.parentNode; if(collapsedReg.test(trace.className)) trace.className = trace.className.replace("collapsed", "expanded"); else trace.className = trace.className.replace("expanded", "collapsed"); } } } /*]]>*/ </script> <!-- end of profiling summary --></body></html> <!-- start profiling summary --> | ||||
Bug heat | 6 | ||||
Complete LimeSurvey version number (& build) | 4.1.13 (Git commit ec14631bbdb34be768d56487761c96cc4931b748) | ||||
I will donate to the project if issue is resolved | No | ||||
Browser | any | ||||
Database type & version | PostgreSQL 10 | ||||
Server OS (if known) | Ubuntu 18.04.4 LTS | ||||
Webserver software & version (if known) | nginx/1.14.0 | ||||
PHP Version | PHP Version 7.2.24-0ubuntu0.18.04.3 | ||||
Ned the faulty lss |
|
I'm sorry, but due to organization policies, I am unable to share the LSS files. Not sure if this helps, but I thought I should mention two things. We have tested multiple LSS export/imports (6, to be precise), and each and every one of them failed on re-import in the same way. To unblock ourselves, we have tried setting up a brand new LimeSurvey instance, with the same code version, but starting from an empty database. Therefore, this issue is no longer blocking us, but hopefully the information here may still be useful to some extent. |
|
Please : on previous DB : https://manual.limesurvey.org/Check_data_integrity |
|
Thank you. Ran a DB integrity check, but it flagged nothing of substance, only obsolete survey response tables. Removing those and re-running the DB integrity checks passed, but the issue remains. |
|
Please check if this bug still exists in the latest patch release. Thank you. |
|
Unfortunately, I am no longer able to reproduce this issue; in the meantime, we run into other issues with LS v4 and switched over to v3.22. Please feel free to close this at your convenience. |
|
Alright, hope LS3 works good for you! |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2020-03-26 17:03 | andreicad | New Issue | |
2020-03-26 17:03 | andreicad | File Added: CDbException.htm | |
2020-03-27 09:16 | DenisChenu | Note Added: 56798 | |
2020-03-27 11:02 | cdorin | Status | new => feedback |
2020-03-27 17:10 | andreicad | Note Added: 56819 | |
2020-03-27 17:10 | andreicad | Status | feedback => new |
2020-03-27 18:06 | DenisChenu | Note Added: 56824 | |
2020-03-27 20:21 | andreicad | Note Added: 56825 | |
2021-02-08 16:55 | ollehar | Assigned To | => ollehar |
2021-02-08 16:55 | ollehar | Status | new => feedback |
2021-02-08 16:55 | ollehar | Note Added: 62020 | |
2021-02-08 17:05 | andreicad | Note Added: 62022 | |
2021-02-08 17:05 | andreicad | Status | feedback => assigned |
2021-02-08 17:09 | ollehar | Note Added: 62023 | |
2021-02-08 17:09 | ollehar | Status | assigned => closed |
2021-02-08 17:09 | ollehar | Resolution | open => unable to reproduce |