# |
Dec 30th 2019, 22:05 |
dereuromark |
@phantomwatson make a PR to change all reserverd keywords, the 4.x release could make this breaking change now :) |
# |
Dec 30th 2019, 22:01 |
phantomwatson |
@brian.french, that's really unintuitive. Thanks for pointing it out. |
# |
Dec 30th 2019, 22:01 |
phantomwatson |
@dereuromark, it turns out I just hadn't run a migration yet. Rookie mistake. |
# |
Dec 30th 2019, 21:51 |
dereuromark |
I am not so sure, i have never needed this for a single app or plugin. |
# |
Dec 30th 2019, 21:40 |
slackebot |
persistent. |
# |
Dec 30th 2019, 21:40 |
brian.french |
So, I ran into an interesting situation while trying to test Model/Tables. The loaded Model was using the default database connection, instead of the test connection. After a few hours of trying to figure out why, I was able to track down what was causing it. Turns out is is a setting in the phpunit.xml file `processIsolation="true"` . This needs to be set to `processIsolation="false"` so that the fixtures and database connection is |
# |
Dec 30th 2019, 21:19 |
phantomwatson |
Cool, now I know(?) how to hunt this down. Thanks! |
# |
Dec 30th 2019, 21:19 |
phpnut |
cberdata" |
# |
Dec 30th 2019, 21:19 |
phantomwatson |
Duh. Not sure why my first instinct was to blame the core. :slightly_frowning_face: |
# |
Dec 30th 2019, 21:17 |
phantomwatson |
Oh crap, the `queue_processes` table from the `Queue` plugin has a field by that name. |
# |
Dec 30th 2019, 21:17 |
ndm |
https://github.com/dereuromark/cakephp-queue/blob/4.2.2/src/Model/Table/QueueProcessesTable.php#L77-L82 |
# |
Dec 30th 2019, 21:16 |
phantomwatson |
Yeah, that's what I'm saying. There's no reference to a field by that name in any first-party code for this application. |
# |
Dec 30th 2019, 21:16 |
ndm |
Maybe it's from a plugin, the queue stuff seems 3rd party |
# |
Dec 30th 2019, 21:16 |
phpnut |
or 'server.cberdata |
# |
Dec 30th 2019, 21:15 |
phpnut |
@phantomwatson search the code for 'server. |
# |
Dec 30th 2019, 21:14 |
phantomwatson |
Yeah, I can't quite make sense of it. There is no field named `server` in any of this application's tables, and there's no reference to a field by that name in any code under `/src` or `/config`. |
# |
Dec 30th 2019, 21:12 |
ndm |
Well I don't how how any of that might be related, but that query is clearly triggered by a validation rule for a field named `server`. |
# |
Dec 30th 2019, 21:06 |
phantomwatson |
I'm assuming this has something to do with my datasource configuration, but I'm not sure how. I had just updated an Elasticsearch index and disabled Kibana, but I wouldn't expect that to prevent CakePHP from being able to access it. |
# |
Dec 30th 2019, 21:04 |
slackebot |
/home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Console/CommandRunner.php(385): Cake\Console\Shell->runCommand(Array, true) #19 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Console/CommandRunner.php(162): Cake\Console\CommandRunner->runShell(Object(Queue\Shell\QueueShell), Array) #20 /home/okbvtfr/public_html/school/bin/cake.php(12): Cake\Console\CommandRunner->run(Array) #21 {main}``` |
# |
Dec 30th 2019, 21:04 |
slackebot |
/home/okbvtfr/public_html/school/vendor/dereuromark/cakephp-queue/src/Shell/QueueShell.php(686): Queue\Model\Table\QueueProcessesTable->add('8635', '9932243dbdfc163...') #16 /home/okbvtfr/public_html/school/vendor/dereuromark/cakephp-queue/src/Shell/QueueShell.php(162): Queue\Shell\QueueShell->_initPid() #17 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Console/Shell.php(517): Queue\Shell\QueueShell->runworker() #18 |
# |
Dec 30th 2019, 21:04 |
slackebot |
/home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/ORM/Marshaller.php(182): Cake\ORM\Marshaller->_validate(Array, Array, true) #13 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/ORM/Table.php(2645): Cake\ORM\Marshaller->one(Array, Array) #14 /home/okbvtfr/public_html/school/vendor/dereuromark/cakephp-queue/src/Model/Table/QueueProcessesTable.php(129): Cake\ORM\Table->newEntity(Array) #15 |
# |
Dec 30th 2019, 21:04 |
slackebot |
/home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Database/Connection.php(333): Cake\Database\Statement\MysqlStatement->execute() #2 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Core/Retry/CommandRetry.php(67): Cake\Database\Connection->Cake\Database\{closure}() #3 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Database/Connection.php(336): Cake\Core\Retry\CommandRetry->run(Object(Closure)) #4 |
# |
Dec 30th 2019, 21:04 |
slackebot |
Cake\Validation\ValidationRule->process('server.cberdata...', Array, Array) #10 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Validation/Validator.php(202): Cake\Validation\Validator->_processRules('server', Object(Cake\Validation\ValidationSet), Array, true) #11 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/ORM/Marshaller.php(260): Cake\Validation\Validator->errors(Array, true) #12 |
# |
Dec 30th 2019, 21:04 |
slackebot |
/home/okbvtfr/public_html/school/vendor/dereuromark/cakephp-queue/src/Model/Table/QueueProcessesTable.php(98): Cake\ORM\Query->count() #8 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Validation/ValidationRule.php(139): Queue\Model\Table\QueueProcessesTable->validateCount('server.cberdata...', Array) #9 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Validation/Validator.php(2612): |
# |
Dec 30th 2019, 21:04 |
slackebot |
/home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Database/Query.php(218): Cake\Database\Connection->run(Object(Cake\ORM\Query)) #5 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/ORM/Query.php(956): Cake\Database\Query->execute() #6 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/ORM/Query.php(906): Cake\ORM\Query->_performCount() #7 |
# |
Dec 30th 2019, 21:04 |
phantomwatson |
Yeah, here it is: ```2019-12-30 20:46:58 Error: [PDOException] SQLSTATE[42S22]: Column not found: 1054 Unknown column 'server' in 'where clause' in /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Database/Statement/MysqlStatement.php on line 38 Stack Trace: #0 /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Database/Statement/MysqlStatement.php(38): PDOStatement->execute(NULL) #1 |
# |
Dec 30th 2019, 20:59 |
ndm |
There should be a stacktrace for that error |
# |
Dec 30th 2019, 20:45 |
phantomwatson |
This seems to be a core thing, as I don't think any of my queries include a `server` field. |
# |
Dec 30th 2019, 20:44 |
phantomwatson |
Anyone know what this might be about? ```Error: [PDOException] SQLSTATE[42S22]: Column not found: 1054 Unknown column 'server' in 'where clause' in /home/okbvtfr/public_html/school/vendor/cakephp/cakephp/src/Database/Statement/MysqlStatement.php on line 38``` |
# |
Dec 30th 2019, 19:26 |
ricksaccous |
ballerrrrr |
# |
Dec 30th 2019, 19:25 |
admad |
`$Foo->updateAll('fld = fld + 1', $someCondition)` |
# |
Dec 30th 2019, 19:25 |
admad |
`$Foo->updateAll('fld = fld + ', $someCondition)` |
# |
Dec 30th 2019, 19:25 |
charolastra |
without the ORM part |
# |
Dec 30th 2019, 19:25 |
ricksaccous |
do you mean save in db without building entities? |
# |
Dec 30th 2019, 19:24 |
kevin.pfeifer |
what do you mean access the table without building entities? |
# |
Dec 30th 2019, 19:22 |
charolastra |
suspected Cake\ORM\Table to handle that but seems not. how the access the able without building entities? |
# |
Dec 30th 2019, 19:11 |
kevin.pfeifer |
i would also suggest you use a table for that |
# |
Dec 30th 2019, 19:08 |
ricksaccous |
if it doesn't need to be persisted you could use cache or session |
# |
Dec 30th 2019, 19:08 |
charolastra |
actually just by a cron console command for now |
# |
Dec 30th 2019, 19:08 |
ricksaccous |
table seems fine to me, especially if the data needs to be persisted even after the user enters and exits the site |
# |
Dec 30th 2019, 19:07 |
ricksaccous |
in what situation do they get incremented |