Commit Graph

375 Commits

Author SHA1 Message Date
Fabio Erculiani
6b95cecfdb [entropy.db] uniform _createCompileFlagsIndex to others (catch OperationalError) 2012-07-26 22:05:05 +02:00
Fabio Erculiani
1de32aba7d [entropy.db] kill >80 columns rows 2012-07-26 22:04:34 +02:00
Fabio Erculiani
90458f80b6 [entropy.client.services,Rigo] add support for the new get_documents() WS API
The new WebService get_documents() is more efficient in terms of
server resources consumption since it doesn't force the WS engine
to calculate the full result set length, which had little use anyway
in Rigo.
This commit switches entropy.client.services' DocumentList to and
reverse dependencies to use the new WS API. The older WS API will be
kept alive for a while (6 months, roughly).
2012-07-25 22:30:38 +02:00
Fabio Erculiani
4b5c06177f Release Entropy 1.0_rc127 2012-07-23 19:23:12 +02:00
Fabio Erculiani
fa35eadf47 [entropy.fetchers] do not generate two separate requests per download
It has been discovered that each download() call (urllib handler)
caused the code to generate two separete HTTP requests for the same
URL. This commit hopefully fixes it without causing any regression
2012-07-23 19:20:29 +02:00
Fabio Erculiani
ef64634def [entropy.dump] dumpobj: use temporary files, fixes possible races when MT 2012-07-23 15:47:19 +02:00
Fabio Erculiani
f301ae60c7 [entropy.graph] Graph: drop __del__ (just use destroy() instead) to help automatic GC 2012-07-23 13:10:49 +02:00
Fabio Erculiani
61950f3af0 [entropy.client.interfaces.db] sort added list to improve determinism (good for caches) 2012-07-23 13:08:25 +02:00
Fabio Erculiani
e8c6af8331 [entropy.misc] LogFile: remove __del__ 2012-07-23 13:08:00 +02:00
Fabio Erculiani
defb58574d [entropy.cache] EntropyCacher: remove __del__ 2012-07-23 13:07:51 +02:00
Fabio Erculiani
db5265e3d5 [entropy.client.package] use retrieveContentIter() 2012-07-23 00:29:27 +02:00
Fabio Erculiani
a1c5e2bc12 [entropy.db] introduce retrieveContentIter() 2012-07-23 00:29:11 +02:00
Fabio Erculiani
ce4d28ef47 [entropy.client] if xcache=False, force EntropyCacher "stashing cache" to OFF 2012-07-22 19:59:37 +02:00
Fabio Erculiani
9472978e60 [entropy.cache] EntropyCacher: make possible to disable the "stashing cache" at runtime 2012-07-22 19:44:18 +02:00
Fabio Erculiani
ae94f49e79 Release Entropy 1.0_rc126 2012-07-20 12:59:20 +02:00
Fabio Erculiani
dc27444749 [entropy.server] use Server.repositories() 2012-07-19 21:10:26 +02:00
Fabio Erculiani
499aee4feb [entropy.server] automatically cleanup the list of trashed SPM UIDs
This commit tries to safely reduce the amount of entries inside the
Trashed SPM UIDs table. At least, the entries are now kept under
control.
2012-07-19 21:09:10 +02:00
Fabio Erculiani
2f9fafc128 [entropy.db] EntropyRepository: create index for trashedcounters 2012-07-19 21:08:38 +02:00
Fabio Erculiani
3dc413e80f [entropy.server] fix typo in comment 2012-07-19 20:59:48 +02:00
Fabio Erculiani
b9b5157817 [entropy.server] resolve_spm_package_uid() already returns int() 2012-07-19 20:49:31 +02:00
Fabio Erculiani
c2c0787169 [entropy.spm] PortagePlugin: resolve_spm_package_uid() must return int 2012-07-19 20:48:53 +02:00
Fabio Erculiani
8b5606ea06 [entropy.server] use resolve_spm_package_uid() 2012-07-19 20:27:47 +02:00
Fabio Erculiani
00a3d87b7d [entropy.spm] PortagePlugin: add resolve_spm_package_uid() 2012-07-19 20:27:15 +02:00
Fabio Erculiani
5a0d8cf7f5 [entropy.db] add removeTrashedUids() and listAllTrashedSpmUids() methods 2012-07-19 20:10:52 +02:00
Fabio Erculiani
749e3ff29d [entropy.client] do not remove current repository database before download
As reported in bug #3495, do not remove the old repository database
file before validating the download outcome (UrlFetcher download
result)
2012-07-17 11:12:40 +02:00
Fabio Erculiani
60d4de50e7 [entropy.client] change error string
"repository does not exist online" is for some people confusing,
better saying "cannot download the repository".
2012-07-17 10:53:56 +02:00
Fabio Erculiani
ece0b58858 [entropy.client] remove orphan function 2012-07-17 10:51:38 +02:00
Fabio Erculiani
60fce6a94b Release Entropy 1.0_rc125 2012-07-16 10:40:35 +02:00
Fabio Erculiani
0ce6633733 [entropy.client] add public method: close_installed_repository() 2012-07-14 16:05:50 +02:00
Fabio Erculiani
9b673fad9b [entropy.output] fix is_stdout_a_tty when sys.stdout has no fileno() 2012-07-07 18:15:34 +02:00
Fabio Erculiani
89713f2528 Release Entropy 1.0_rc124 2012-07-07 14:11:58 +02:00
Fabio Erculiani
0e54ec96ec Revert "[entropy.server] keep repo closed during early init stages"
This reverts commit 4c8d6c74e3.
It is no longer needed.
2012-07-07 14:05:57 +02:00
Fabio Erculiani
a312a6146e [entropy.server] reimplement connection pooling
This commit should hopefully fix any deadlock reported in
Entropy Server due to weird sqlite3 behaviours when multiple
idle connections are open on the same file
2012-07-07 13:58:25 +02:00
Fabio Erculiani
b8976f4c0c [entropy.db] EntropyRepository: expose connection and cursor pools
This commit makes possible for subclasses to reimplement the
connection and cursor pool logic.
2012-07-07 13:29:29 +02:00
Fabio Erculiani
017f2b162c [entropy.db] EntropyRepository: hold __connlock during pool setup
This commit ensures that __connlock is held during the whole
__cursor_cache and __connection_cache initialization. This avoids
any possible race condition, especially on dbapi2.connect() which
could cause weird random anomalies
2012-07-07 09:34:21 +02:00
Fabio Erculiani
9d2b329836 Release Entropy 1.0_rc123 2012-07-06 21:43:31 +02:00
Fabio Erculiani
4c8d6c74e3 [entropy.server] keep repo closed during early init stages 2012-07-06 21:30:22 +02:00
Fabio Erculiani
15349565a9 [entropy.*] rework EntropyRepository.commit() usage
Using the new baseinfo/extrainfo SCHEMA, several deadlocks were
found when using Eit (thus Entropy Server), due to aggressive
sqlite3 object caching.
This commit removes almost every implicit commit() call from the
EntropyRepository code, forcing the caller to properly handle
transactions. This will hopefully fix any deadlock problem observed
inside our chroots.
2012-07-06 21:10:56 +02:00
Fabio Erculiani
01a8f3e586 Release Entropy 1.0_rc122 2012-07-02 23:41:31 +02:00
Fabio Erculiani
fb5cb00b9d [entropy.db] make sure to commit() at the end of createAllIndexes()
It has been found that with the new baseinfo, extrainfo SCHEMA,
createAllIndexes() deadlocks at the ANALYZE statement. Committing
any previous transaction before calling ANALYZE fixes the issue.
2012-07-02 23:40:03 +02:00
Fabio Erculiani
703f2ff929 Release Entropy 1.0_rc121 2012-07-02 11:47:09 +02:00
Fabio Erculiani
853359c208 [entropy.client] make sure to drop any reference to disabled repo when enabling 2012-06-28 15:47:24 +02:00
Fabio Erculiani
18f422a680 [entropy.client] bump configuration file mtime when enabling/disabling repositories
This is useful for any mtime-based cache around. os.rename() doesn't
affect mtime.
2012-06-28 15:46:07 +02:00
Fabio Erculiani
83c69da974 [entropy.core] SystemSettings: remove mtime cache for repositories.conf.*
The code only checked for repositories.conf mtime, completely ignoring
any mtime change inside repositories.conf.d/. Drop for now.
2012-06-28 15:45:09 +02:00
Fabio Erculiani
a1ba8b983a enable baseinfo-extrainfo-2010 database schema by default
After 2 years, we are ready to enable it by default
2012-06-21 11:47:59 +02:00
Fabio Erculiani
1f83831ed8 ignore hidden files when generating the SPM config files list 2012-06-21 11:47:55 +02:00
Fabio Erculiani
979369d5d5 [entropy.spm] add support for ENTROPY_*DEPEND variables inside ebuilds 2012-06-10 12:28:47 +02:00
Fabio Erculiani
595d5ed7c4 Release Entropy 1.0_rc120 2012-06-06 14:54:21 +02:00
Fabio Erculiani
959abae8b2 Release Entropy 1.0_rc119 2012-06-04 12:12:46 +02:00
Fabio Erculiani
859cb562ed [entropy.spm] PortagePlugin: rewrite _bump_vartree_mtime(), fix Portage cache corruption
It has been found that pkg vdb entry mtime was not properly updated,
which resulted in the following Portage cache corruption:

>>> Auto-cleaning packages...
portage: COUNTER for net-libs/gnutls-2.12.18 was corrupted; resetting to value of 0
2012-06-04 12:09:13 +02:00