Michael
a09c5b692c
Command based pre fetching of worker tasks
2019-03-23 06:08:18 +00:00
Michael
ea71a4e83a
Refetch new jobs only once per execution loop
2019-03-08 20:39:58 +00:00
Tobias Diekershoff
5df246e9af
Merge pull request #6825 from annando/empty-spawn
...
Worker: Don't spawn without jobs
2019-03-08 07:26:22 +01:00
Michael
d87abe9563
Worker: Don't spawn without jobs
2019-03-08 05:53:36 +00:00
Michael
f2560c42d1
Reduce the default maximum load for the worker to 20
2019-03-02 18:41:12 +00:00
Michael
c3b12b63c8
Added some description, changed logger call
2019-02-27 09:49:26 +00:00
Michael
505a34d40e
Log the time as decimal
2019-02-27 09:12:40 +00:00
Michael
78960d4bde
Removed unneeded spaces
2019-02-27 09:11:37 +00:00
Michael
5e440aa035
The cron interval is minutes - so we have to convert it into seconds
2019-02-27 08:55:25 +00:00
Michael
0ee1ea5f29
The log text is now shorter
2019-02-27 08:41:45 +00:00
Michael
11e39da6cc
And moving the block back to the old place
2019-02-27 07:08:44 +00:00
Michael
e1cc7262de
Respawing when quitting
2019-02-27 07:04:21 +00:00
Michael
528636c9f4
Using constants is nicer
2019-02-27 06:55:04 +00:00
Michael
fb371e1048
Merge remote-tracking branch 'upstream/2019.03-RC' into worker2
2019-02-27 06:41:14 +00:00
Michael
40573120b9
Enhanced logging, stopping worker after cron lifetime
2019-02-27 06:36:19 +00:00
Hypolite Petovan
05d8bf6b54
Fix wrong use of array_shift in Core\Worker
2019-02-25 07:11:35 -05:00
Michael
7703875b55
Fixes "Undefined property: Friendica\App::$queue"
2019-02-23 16:08:02 +00:00
Philipp Holzer
8760d89eb8
reverting back workerLogger to Logger
2019-02-23 10:24:22 +01:00
Philipp Holzer
16863c5d82
switched back to logger
2019-02-22 23:53:20 +01:00
Philipp Holzer
9c12f3f226
Formatting logger to new style
2019-02-22 20:41:13 +01:00
Philipp Holzer
ee37632695
Adding worker id & functionname to worker logs
2019-02-22 20:10:27 +01:00
Hypolite Petovan
4375edd63e
Merge pull request #6719 from annando/worker-scheduler
...
New scheduler mechanism - now to the correct branch
2019-02-21 16:12:19 -05:00
Michael
7810227040
Reverted test stuff
2019-02-21 19:34:12 +00:00
Michael
3450f12cba
Changed log calls
2019-02-21 19:32:31 +00:00
Philipp Holzer
f536107911
Fixing value check for configuration
2019-02-18 11:29:51 +01:00
Philipp Holzer
86aaa6565e
Fixing saveLog()
2019-02-18 11:29:51 +01:00
Philipp Holzer
a3d6062476
check if value is set
...
get basepath with config instead cache
2019-02-18 11:29:42 +01:00
Michael
a1a1367d6e
Added function description
2019-02-17 19:20:24 +00:00
Michael
061d959e7f
Code cleanup
2019-02-17 18:55:17 +00:00
Michael
01d6ba85ff
The number of workers per priority is now calculated dynamically
2019-02-17 03:22:29 +00:00
Philipp Holzer
5e6e1a8025
Introducing Profiler
2019-02-16 23:11:30 +01:00
Michael
0845089a0f
New scheduler mechanism
2019-02-16 15:03:37 +00:00
Michael
ca529d9de7
The process id is currently not supported.
2019-02-14 13:30:41 +00:00
Michael
e20a675953
The setting "worker_fetch_limit" now only has an impact on high priority processes
2019-02-14 06:53:04 +00:00
Michael
f6e8246e75
Ensure that "strtotime" returns the correct timestamp
2019-02-12 06:42:45 +00:00
Michael
742b472994
Fix: Workerqueue processes had been killed too early
2019-02-11 22:39:59 +00:00
Michael
f65b35901e
Fix worker statistics
2019-02-11 08:59:14 +00:00
Michael
5fc6c0ef38
Fix: Corected config value name
2019-02-11 04:39:24 +00:00
Michael
171cfe8f44
Furtner improval of the worker speed
2019-02-09 23:10:15 +00:00
Michael
5e5a2c3cc1
Improved worker performance (changed keys, changed queries)
2019-02-08 21:48:41 +00:00
Michael
b0411b46c4
Separate config options to display the worker jobs per minute
2019-02-06 07:37:45 +00:00
Hypolite Petovan
3282ce5389
Fix PHPDoc comments project-wide
2019-01-21 10:35:51 -05:00
Hypolite Petovan
55e54bb950
Replace deprecated Addon::callHooks with Hook::callAll
...
- Update documentation
2019-01-21 09:50:56 -05:00
Hypolite Petovan
5e1ceb57de
Escape global namespaced get_app() calls
...
- Add deprecated status
2019-01-03 21:27:36 -05:00
Hypolite Petovan
acaee626f5
Remove include/ requires that are now done directly from Composer
2018-12-24 09:56:25 -05:00
Michael
e759497af3
Fix small typo / Workerqueue count now only counts non deferred entries
2018-11-04 10:51:01 +00:00
Adam Magness
50da89d861
Logger Levels
...
update logger levels in calls
2018-10-30 09:58:45 -04:00
Adam Magness
14fde5dc9b
Log function
...
implement log() function.
2018-10-30 09:57:14 -04:00
Michael
95dc030926
Show deferred worker tasks in the admin interface and workerqueue logs
2018-10-23 20:38:28 +00:00
Tobias Diekershoff
dbe49a0c1a
Merge pull request #5998 from annando/ap-queue
...
Unsuccessful ActivitiyPub transmission are now deferred
2018-10-23 06:54:11 +02:00
Michael
e3e714a45f
Unsuccessful ActivitiyPub transmission are now deferred
2018-10-23 03:54:18 +00:00
Hypolite Petovan
e511790d62
Move NULL_DATE from boot.php to DBA::NULL_DATETIME
...
- Add DBA::NULL_DATE constant
2018-10-22 16:50:55 -04:00
Michael
e2762e032c
Poddibility to defer worker execution
2018-10-15 05:19:35 +00:00
Philipp Holzer
2c541afd47
Moved functions out of boot.php into class
...
- z_root() => $a->getBaseURL()
- absurl() => removed because no usage
- is_ajax() => $a->isAjax()
- current_load() => System::currentLoad()
- argc() => $a->argc
- argv($x) => $a->getArgumentValue($x)
2018-10-13 19:03:08 +02:00
Philipp Holzer
5a02e39a65
Rename App Methods
...
- renamed a lot of App methods to CamelCase
- replaced direct public variables with get-/set-Methods
2018-10-10 00:16:06 +02:00
Philipp Holzer
bd2b3b1ef5
LockDriverFixings
...
- release Locks in case of failures
- adding some cache tests
2018-09-06 08:11:18 +02:00
Michael
432eec770b
Issue 5467: Cron jobs hadn't been executed
2018-07-24 06:15:58 +00:00
Hypolite Petovan
ecea7425f8
Rename DBA::is_result to DBA::isResult
2018-07-23 11:04:14 -04:00
Hypolite Petovan
0ec44f3e8a
Rename DBM method calls to DBA method calls
2018-07-23 11:02:24 -04:00
Michael Vogel
2d0a749734
Merge pull request #5431 from MrPetovan/task/5410-rename-database-methods
...
Move DBA to src/ part 3.1: Rename DBA methods
2018-07-23 15:18:58 +02:00
Philipp
cd52d0b3e9
Using getopt for CLI arguments ( #5446 )
...
* Adding Argument class to Friendica
* Adding Argument class to Friendica
* Adding Argument class to Friendica
* fixing arguments for `spawnWorker`
* Adding `use Friendica\BaseObject` to `ApiTest.php`
* Refactoring the argument-usages of Friendica
* Refactoring the argument-usages of Friendica
* removing superfluous []
2018-07-23 07:40:52 -04:00
Hypolite Petovan
415b982d39
Rename DBA::num_rows to DBA::numRows
2018-07-22 19:27:35 -04:00
Hypolite Petovan
4db98eb43d
Rename DBA::inArray to DBA::toArray
2018-07-22 19:27:35 -04:00
Hypolite Petovan
f051ae1698
Rename DBA::fetch_first to DBA::fetchFirst
2018-07-22 19:27:34 -04:00
Michael Vogel
6a6a805225
One more notice ( #5429 )
...
* Some more notices
* And some more notice in the worker
2018-07-20 20:43:21 -04:00
Hypolite Petovan
af6dbc654f
Rename Friendica\Database\dba to Friendica\Database\DBA
2018-07-20 08:19:26 -04:00
Hypolite Petovan
daa1177e3a
Update use statement lists with new Friendica\Database\dba class
...
- Remove unused use statement
- Remove superfluous use statements (classes in the same namespace)
- Add missing use statements
2018-07-19 22:15:21 -04:00
Hypolite Petovan
d487c399dd
Standards: Rename App methods
...
- Rename App->max_processes_reached to App->isMaxProcessesReached
- Rename App->maxload_reached to App->isMaxLoadReached
2018-07-16 19:38:14 -04:00
Michael Vogel
d3a2ed85fe
Next item structure works ( #5380 )
...
* Use "LEFT JOIN" to always fetch the item. Needed for update routines.
* New conversion routine that now covers every item
* Post update is now activated
* We now use a hash based upon RIPEMD-320 for content and activity
* The hash doesn't contain the plink anymore
* Legacy item fields are now "null"able
* New hash function for a server unique item hash
* Introduction of the legacy mode (usage of old item fields)
* Code simplification
* We don't need the "uri" fields anymore in item-activity and item-content
* Use the "created" and not the "received" date for the hash
* Avoiding several notices
* Some more warnings removed
* Improved uri-hash / Likes on Diaspora are now getting a creation date
* Corrected the post update version
* Ensure an unique uri-hash
* Don't delete orhaned item data at the moment
* Partly reworked, due to strange behaviour
* Some more parts reworked
* Using the uri currently seems to be more reliable
* Using the uri here as well
* Use the hash values again
* Grouped item fields in different categories
* Notices again
* use the gravity (we always should)
* Added hint for disabled post updates
* Notices ...
* Issue #5337 : Personal notes are displayed again
* Use the gravity again
2018-07-15 14:36:20 -04:00
Michael
3cb7a7606e
workaround for stalling worker processes when running the daemon
2018-07-11 06:05:22 +00:00
Michael Vogel
3792e2819d
Use a process identifier for logging that contains the pid ( #5359 )
2018-07-10 18:32:47 -04:00
Philipp Holzer
e41e7d2edd
Fixings
...
- fixed test for semaphore
- fixed some issues
- changed namespace in Tests back to "src/"
- changed namings
2018-07-05 20:57:31 +02:00
Philipp Holzer
3f7e4f5bb6
redesign of locking & caching
...
- New Factory "CacheDriverFactory" for Cache and Locks
- Adding Redis/Memcached Locking
- Moved Lock to Core
- other improvements
2018-06-28 22:57:17 +02:00
Philipp Holzer
dd085ae592
minor changes
2018-06-26 23:42:26 +02:00
Philipp Holzer
a57e6cfa1b
Moved Lock.php back to Utils
2018-06-26 23:28:07 +02:00
Philipp Holzer
0218d16335
Lock abstraction (like the Cache)
...
- adding interface
- adding seperate drivers
- moving Lock to the Core package
2018-06-26 22:31:04 +02:00
miqrogroove
12d0f4bf3c
Add Comments to Worker Exponent Implementation
2018-06-20 06:43:57 -04:00
miqrogroove
9cde4aa109
Make Load Exponent Configurable
2018-06-20 06:22:53 -04:00
miqrogroove
97cabcecf2
Unify Worker Load Formulas
2018-06-20 06:06:20 -04:00
Michael
00124f9ac0
Makes the linear load calculation optional
2018-06-20 04:38:50 +00:00
miqrogroove
0dbddb240c
Update Worker.php
2018-06-19 18:55:55 -04:00
miqrogroove
7e4d7b9aac
Fix logic errors in tooMuchWorkers()
...
There are probably a dozen different ways to do this, so this is not necessarily the "right" way.
2018-06-19 18:53:02 -04:00
Michael
962fbc9166
Many "fetch_first" had been replaced
2018-06-19 21:33:07 +00:00
Michael
e97a3c25e7
Multiple daemon improvements (foreground, faster spawning)
2018-06-15 18:18:20 +00:00
Michael
1304dae0d3
Bugfix: In the daemon mode we forgot to call the cron jobs
2018-06-06 03:48:04 +00:00
Michael
371f511954
Respect "don't fork"
2018-06-02 05:17:32 +00:00
Michael
3034170088
DBStruxture can now create "memory" tables as well
2018-06-02 05:03:23 +00:00
Michael
28f8beebfc
Workers can now be started exclusively from the daemon and other workers
2018-06-01 22:09:27 +00:00
Hypolite Petovan
93daf7883e
Merge branch 'master' into develop
...
- Updated new develop version label
- Incremented database build number
2018-06-01 07:30:04 -04:00
Roland Häder
fe1e7b92f2
Continued:
...
- system,worker_dont_fork may not be set, always set default to "false" to
have it properly set as Config::get() may one day behave differently
Signed-off-by: Roland Häder <roland@mxchange.org>
2018-05-14 22:50:05 +02:00
Michael
f1b5e828db
Fix for the slow spawning of workers
2018-05-14 05:02:18 +00:00
Hypolite Petovan
27d94023ee
Merge branch 'master' into develop
2018-03-23 06:15:55 -04:00
Hypolite Petovan
1c2deac7e5
Move scripts/worker.php to bin/
2018-03-18 23:25:21 -04:00
Hypolite Petovan
95752b79e8
Add cache performance to API and worker
2018-03-04 23:13:19 -05:00
Michael
13df527d62
Bugfix: Don't cache when looking for maintenance mode
2018-03-04 13:01:46 +00:00
Hypolite Petovan
d419d07f73
[Scrutinizer] Fix undeclared variables in src/ (except Protocol/)
...
- Use dba::selectFirst to remove intermediate variables `$r`
- Remove unused variable `$url_recipients` in Worker\Dellivery
2018-02-14 00:05:00 -05:00
Michael
6289e307aa
Bugfix: The provided worker priority had been ignored
2018-02-13 02:26:35 +00:00
Michael
2a762868e9
Some clean up for the worker, arrays are now supported as parameter
2018-02-11 16:18:39 +00:00
Michael
47d165cb25
Hook calls can now be forked into a worker queue entry
2018-02-06 22:52:36 +00:00
Hypolite Petovan
5e7285b9ba
Move Temporal::convert() to DateTimeFormat::convert()
2018-02-03 08:56:55 -05:00
Hypolite Petovan
35d06bd9eb
Add Temporal::utc() shorthand to Temporal::convert()
2018-02-03 08:56:53 -05:00
Hypolite Petovan
8aff8a76eb
Add Temporal::utcNow()
2018-02-03 08:56:52 -05:00
Hypolite Petovan
dc366bf1f7
Refactor datetime_convert into Temporal::convert
...
- Changed parameter order to save space
- Refactor select_timezone into Temporal::getTimezoneSelect
- Refactor field_timezone into Temporal::getTimezoneField
2018-02-03 08:56:51 -05:00
Adam Magness
f04d40a37e
Review update
...
Rename function, move others
2018-01-27 11:13:41 -05:00
Adam Magness
c67452f72e
Move fetch_url
...
move fetch_url function
2018-01-26 23:09:48 -05:00
Adam Magness
11cf36105c
Update Addon functions and calls
...
Update function names and calls for Addon class.
2018-01-20 07:48:22 -05:00
Hypolite Petovan
78ac7afe9c
Move process functions to Model\Process
...
- Add start|endProcess functions to Core\Worker
2018-01-17 00:17:58 -05:00
Hypolite Petovan
e36f2bb1fb
Use short form array syntax everywhere
...
- Add short form array syntax to po2php.php generation
2018-01-15 14:07:17 -05:00
Hypolite Petovan
5fc4927764
Improve dba::selectFirst calls
...
- Fix remaining $r[0] references
- Rename $r to meaningful names
2018-01-11 03:43:57 -05:00
Hypolite Petovan
ae66bcaff3
Rename selectOne to selectFirst
2018-01-10 12:57:21 -05:00
Hypolite Petovan
da60893590
Replace dba::select(limit => 1) by dba::selectOne
...
- Convert array declarations to new style
2018-01-10 12:57:21 -05:00
Hypolite Petovan
9f04017e27
Quick fix PHP notices in various files
...
- Remove unused variables
- Fix variable name typos
- Use x() and defaults() to fix undefined index
- Add back uninitialized variables
2018-01-02 08:11:14 -05:00
Hypolite Petovan
10b72b0e9e
PHPStan: Fix missing requires/namespaces
2017-12-17 15:26:43 -05:00
Adam Magness
28cceda461
Indentation
...
modified to multi line function call.
2017-11-20 11:29:55 -05:00
Adam Magness
9622dedaeb
New function
...
new function from recent develop branch merge
2017-11-20 11:01:32 -05:00
Adam Magness
1115d19f79
More Standards
...
More coding standards updates.
2017-11-20 11:01:32 -05:00
Michael
920160cb28
The poller is now the worker
2017-11-19 21:47:21 +00:00
Michael
cabfcfc904
We now are having a "scripts" folder
2017-11-19 21:21:54 +00:00
Michael
183999ee08
No german compound wording :-)
2017-11-19 19:47:04 +00:00
Michael
8cd21269ff
The last of the big workers moved ... delivery and notifier
2017-11-19 18:59:55 +00:00
Michael
2de457489f
"CreateShadowentry" and "ProfileUpdate" now moved as well
2017-11-19 16:59:37 +00:00
Michael
2515d02e6d
SpoolPost moved
2017-11-18 07:44:38 +00:00
Michael
9576f6743d
Command back ...
2017-11-14 22:13:33 +00:00
Michael
405753d1c3
cron.php is reworked, other worker files had been moved temporarily
2017-11-14 21:50:16 +00:00
Michael
06ce34eda1
The worker can now call methods in the worker namespace
2017-11-12 07:21:23 +00:00
Adam Magness
4ca68c7af0
Class file relocations
...
Issue #3878
2017-11-08 08:37:03 -05:00
Adam Magness
6189f6c8e7
Relocate class files from /include to /src/
...
dbm, Diaspora, dfrn, and NotificationsManager moved to namespace. Includes and references in files updated.
2017-11-08 08:36:48 -05:00
Adam Magness
0dfa57948f
Issue-#3873
...
Replace deprecated functions with new syntax.
2017-11-07 06:24:39 -05:00
Michael
28701a8df3
Some small correction
2017-11-06 15:38:15 +00:00
Michael
4ebb76e5a6
Changed explanation
2017-11-06 15:32:34 +00:00
Michael
84c3c0753e
Now we use only dba functions
2017-11-05 17:13:37 +00:00
Michael
70c08dee1d
Some more improvements
2017-11-05 15:28:55 +00:00
Michael
478e363967
proc_run was replaced
2017-11-05 12:15:53 +00:00
Michael
da212a28a2
New worker class that does all the work
2017-11-05 10:33:46 +00:00