Commit Graph

11137 Commits

Author SHA1 Message Date
Fabio Erculiani
301aa281d5 [entropy.client] avoid races in Entropy Client @property methods 2014-01-05 13:59:14 +01:00
Fabio Erculiani
881f8831cf [entropy.client] set _real_enabled_repos atomically
The race was triggered by the startup code path in Rigo.
2014-01-05 13:55:31 +01:00
Fabio Erculiani
8c4737ef7a [entropy.core] SystemSettingsPlugin: make parse() return plugin metadata
This is needed in order to avoid infinite recursion through
__maybe_lazy_load()
2014-01-05 13:32:36 +01:00
Fabio Erculiani
64fb91dcae [entropy.core] SystemSettings: enable lazy loading of external plugins as well 2014-01-05 13:00:31 +01:00
Fabio Erculiani
ce070e541b Merge pull request #7 from prescott66/patch-4
Slovak translation update
2014-01-05 02:57:17 -08:00
Dušan
a03296d92d Slovak translation update
finally translated to 100%
2014-01-05 11:27:54 +01:00
Fabio Erculiani
282fd0d74c Merge pull request #6 from prescott66/patch-3
Slovak translation update
2014-01-05 02:18:13 -08:00
Dušan
1152e6e6f0 Slovak translation update 2014-01-05 10:11:47 +01:00
Fabio Erculiani
1d965c7185 Merge pull request #5 from prescott66/patch-2
Slovak translation update
2014-01-04 23:35:59 -08:00
Fabio Erculiani
1f4ecf45b3 Merge pull request #4 from prescott66/patch-1
Slovak translation update
2014-01-04 23:35:46 -08:00
Dušan
42f9df141b Slovak translation update
Fixed plurals and added new strings
2014-01-04 22:38:01 +01:00
Dušan
95a37ca2a2 Slovak translation update
Fixed strings with plurals
2014-01-04 22:27:40 +01:00
Fabio Erculiani
c946bacd7d [conf] update sabayon-limbo repository description 2014-01-04 18:17:34 +01:00
Fabio Erculiani
2e36e7c86c Tagging Entropy version 264 264 2014-01-04 11:16:46 +01:00
Fabio Erculiani
92a5f2fcc1 Release Entropy 264 2014-01-04 11:16:46 +01:00
Fabio Erculiani
de156b083b [Rigo] change the EntropyRepository default cache policy to NONE
This saves a huge quantity of RAM, as happened with RigoDaemon
2014-01-04 11:16:00 +01:00
Fabio Erculiani
3ebba8b14f [entropy.db.sql] fix typo in SQL query, s/tag/versiontag/ 2014-01-04 11:15:27 +01:00
Fabio Erculiani
c48869bb31 [entropy.core] SystemSettings: drop mtime based in-RAM cache
It does more harm than good and we have lazy loading now
2014-01-04 11:01:27 +01:00
Fabio Erculiani
c98c39db06 [entropy.core] SystemSettings: drop mtime based cache validation
This is no longer necessary and error prone on filesystems with
coarse mtime granularity (like ext3). Individual methods are able
to validate their own caches.
2014-01-04 10:31:09 +01:00
Fabio Erculiani
5da276bfb6 [entropy.core] SystemSettings: __remove_repo_cache() is no longer necessary 2014-01-04 10:10:49 +01:00
Fabio Erculiani
d20ce3c2cc [client] update translations 2014-01-03 21:04:06 +01:00
Fabio Erculiani
3238689ad4 [client] update Slovak translation, thanks to Dušan Kazik 2014-01-03 21:03:41 +01:00
Fabio Erculiani
9af5689a13 [entropy.core] SystemSettings: simplify __getitem__ 2014-01-03 20:57:10 +01:00
Fabio Erculiani
ab6d1f9fc4 [entropy.core] SystemSettings: lazy load item only if it hasn't been loaded yet 2014-01-03 20:55:36 +01:00
Fabio Erculiani
2053989b27 [entropy.core] SystemSettings: add lazy loading of metadata 2014-01-03 20:25:52 +01:00
Fabio Erculiani
289add075b [Rigo] Update the Slovak translation, thanks to Dušan Kazik 2014-01-03 20:24:27 +01:00
Fabio Erculiani
86f31f2948 Tagging Entropy version 263 263 2014-01-03 16:12:21 +01:00
Fabio Erculiani
7877126107 Release Entropy 263 2014-01-03 16:12:21 +01:00
Fabio Erculiani
b0bd765b50 [entropy.db.sqlite] do not acquire the repo lock if it's not strictly needed
Try to avoid to acquire the repository lock in exclusive mode if
it's not strictly needed. We were acquiring the lock in exclusive mode
even when there was nothing to update due to schema changes.
2014-01-03 16:10:33 +01:00
Fabio Erculiani
d7d75b4ad9 Tagging Entropy version 262 262 2014-01-03 15:50:06 +01:00
Fabio Erculiani
f1de6accef Release Entropy 262 2014-01-03 15:50:06 +01:00
Fabio Erculiani
74f8bb63f5 [entropy.spm] PortagePlugin: update portage.doebuild() call, remove deprecated root argument 2014-01-03 15:45:39 +01:00
Fabio Erculiani
c65d713c91 [Rigo] fix NotificationBox message_type keyword argument 2014-01-03 15:12:12 +01:00
Fabio Erculiani
d03466ea10 [entropy.db.cache] disable in-RAM cache if total memory is less than 4G 2014-01-03 14:54:04 +01:00
Fabio Erculiani
ee48b812ed [entropy.tools] add total_memory() function 2014-01-03 14:53:42 +01:00
Fabio Erculiani
cbe42edee9 [RigoDaemon] set the cache policy to EntropyRepositoryCachePolicies.NONE
This greatly reduces the memory consumption of RigoDaemon
2014-01-03 07:36:44 +01:00
Fabio Erculiani
338b3f6cc5 [entropy.db] expose and use the currently set cache policy 2014-01-02 23:00:00 +01:00
Fabio Erculiani
b6ed5f9948 [entropy.db.cache] introduce EntropyRepositoryCachePolicies
It is now possible to define a policy for the in-RAM cache through
EntropyRepository constructor or EntropyRepositoryCachePolicies.
2014-01-02 22:58:54 +01:00
Fabio Erculiani
ba70572e17 Tagging Entropy version 261 261 2014-01-01 11:03:52 +01:00
Fabio Erculiani
2d22414086 Release Entropy 261 2014-01-01 11:03:52 +01:00
Fabio Erculiani
e16ad0a828 [entropy.db.sqlite] catch LockAcquireError in _maybeDatabaseSchemaUpdates
User may not have the privileges to acquire the lock, but we should
not fail here.
2014-01-01 10:58:54 +01:00
Fabio Erculiani
999f0509dd [entropy.db] raise LockAcquireError in case of lock acquire error failures 2014-01-01 10:58:17 +01:00
Fabio Erculiani
eda8a7bafb Tagging Entropy version 260 260 2013-12-31 18:01:26 +01:00
Fabio Erculiani
f0d437a090 Release Entropy 260 2013-12-31 18:01:25 +01:00
Fabio Erculiani
2f713f73d5 [entropy.db.sqlite] raise timeout to 300 seconds
This will better fit slow disks.
2013-12-31 18:00:35 +01:00
Fabio Erculiani
f446b8d05b [RigoDaemon] reimplement Entropy.get_repository()
We need to monkey patch isMainThread in order to return True for
the ActionQueueWorkerThread as well. This avoids EntropySQLRepository
to initialize an infinite number of cleanup monitor threads for a
thread that will never go away (the ActionQueueWorkerThread one).
2013-12-31 17:53:22 +01:00
Fabio Erculiani
1598f5e501 [entropy.*] use get_repository() to return a GenericRepository as well
All the repository classes must go through get_repository() to allow
further monkey patching and other external, API consumer related features.
2013-12-31 17:50:31 +01:00
Fabio Erculiani
4edaf614f4 [entropy.db.sql] in global context, the current thread is always MainThread 2013-12-31 17:38:57 +01:00
Fabio Erculiani
72aa0a07d1 [entropy.*] turn get_repository() into a classmethod 2013-12-31 17:30:29 +01:00
Fabio Erculiani
956b31d05e [entropy.db.sql] add overridable isMainThread method
a MainThread may be a "liquid" concept. A dedicated worker thread
may be considered a "MainThread" from the point of view of EntropySQLRepository.

_start_cleanup_monitor checks whether the calling thread is the MainThread
in order to determine if a cleanup thread should be started joining
the current thread. The problem with this approach is that if our
worker thread is a long lasting thread, we will end up with hundreds
of cleanup monitor threads waiting for the worker thread to terminate.
This will never happen though.

We can now reimplement isMainThread in order to tell the internal
function not to start the cleanup monitor thread also for arbitrary
threads (like the worker thread in RigoDaemon).
2013-12-31 17:24:24 +01:00