- 14 Apr, 2013 5 commits
-
-
Dan McGee authored
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Whoops. Just introduced this when ensuring we look for both the packgae in other repositories as well as any replacments. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
The benefit of these storage operations might be outweighed by the cost, especially given how infrequently these functions are called. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Move completely to custom SQL for this logic. The Django ORM just doesn't play nice with the kind of query we are looking to do, so it is easier to do using raw SQL. The biggest pain factor here is in supporting sqlite as it doesn't have nearly the capabilities in handling datetime types directly in the database, as well as having some different type conversion necessities. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 13 Apr, 2013 4 commits
-
-
Dan McGee authored
This covers the case where we can't find the package in any other repositories, but it was removed recently enough that we have a found package update object. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
This allows our normal keyword-based search to be index-optimized rather than always doing full table scans. It requires the pg_trgm extension which is shipped out of the box with any sane install of PostgreSQL. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
This simplifies things and makes injecting this single mirror ID into custom SQL a whole lot easier. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Rather than doing this in the Python code and needing 12,000+ rows returned from the database, we can do it in the database and get fewer than 300 rows back. If I recall correctly, the reason this was not done originally was due to our usage of MySQL and some really bad date math/overflow stuff it did when the interval between last_sync and check_time were greater than about a week. Luckily, we have switched to using a more sane database. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 11 Apr, 2013 1 commit
-
-
Dan McGee authored
This gives us a bunch more flexibility on this field, and now supports all the options that the rsync config file supports. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 08 Apr, 2013 1 commit
-
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 29 Mar, 2013 3 commits
-
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
This was added in 2010 in commit e95c4563 as a short-term fix. The short-term is up. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 13 Mar, 2013 2 commits
-
-
Dan McGee authored
This was a silly thinko here; it caused the logs to fill up with a bunch of 'unknown url type: rsync' errors. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Very few, if any, FTP servers support connections over IPv6. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 12 Mar, 2013 2 commits
-
-
Dan McGee authored
We don't see these called enough to make caching the data worth it. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 11 Mar, 2013 6 commits
-
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Remove the login_required decorator from the index and detail views to allow everyone to see the same thing. Of course, when I say "same" here, unauthenticated users don't see the same links developers do to mark packages complete and incomplete. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
This is similar to what we had before on the public list page; put it here too so the page explains at least a little to the general public. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
And continue sorting by creation date after that. Turns out most people care about incomplete todolists more than complete ones. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Replace this with a redirect to the developer todolist index page. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
If a package is built as a split package where pkgname != pkgbase, but only one actual split package is produced, the link on the recent update screen requires an extra click to get to the single package. Fix this by linking directly to the package itself. (Examples in current repos: ntfs-3g, python2-south) Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 09 Mar, 2013 1 commit
-
-
Dan McGee authored
We removed the last non-admin usage of this in commit e65c7805 , so it can be removed. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 07 Mar, 2013 9 commits
-
-
Dan McGee authored
We were seeing this in production: IntegrityError: duplicate key value violates unique constraint "todolists_todolistpackage_todolist_id_700d1b623414814c_uniq" DETAIL: Key (todolist_id, pkgname, arch_id)=(206, ruby-cairo, 2) already exists. This is due to a corner case where a package was originally on a todolist and the underlying package object disappeared, so the todolist entry was unlinked and pkg_id set to NULL. Later, this package came back, but our get_or_create tried to create an object that violated our unique constraint because of the missing pkg_id. Call get_or_create with the minimum necessary bits to find the todolist package object, and pass the rest of the values via defaults to avoid this problem. Additionally, relink any todolist entries up to a package in the repositories if one is available. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Rsync doesn't like this so much: Unexpected remote arg: rsync://mirror.example.com/archlinux/lastsync rsync error: syntax or usage error (code 1) at main.c(1214) [sender=3.0.9] Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
This adds the -l/--location argument to the command in order to pass in a check location that we are currently running from. This locks the IP address family to the one derived from the address on that location, and stores any check results tagged with a location ID. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
This reverts commit 3c4ceb16 . We don't need this anymore as bulk_create gets automatic batching now on sqlite3 so it is safe to use. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
We have been better about doing this to most of our models, but the ones here didn't have a created field. Add it where appropriate and set a reasonably old default value. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 05 Mar, 2013 2 commits
-
-
Dan McGee authored
Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
For now, it is not included in the default selection, but we have a few existing mirrors that do support it. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 28 Feb, 2013 1 commit
-
-
Dan McGee authored
This moved around in Django 1.5, so add it to the override list so it continues to be ignore like it was in older versions of Django. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
- 27 Feb, 2013 3 commits
-
-
Dan McGee authored
Seems the Django caching layer has changed quite a bit and is doing all sorts of funky s**t at this point. Yay for errors! Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
We started seeing this in production with memcached usage and the upgrade to Django 1.5: PicklingError: Can't pickle <class 'devel.models.UserProfile_allowed_repos'>: attribute lookup devel.models.UserProfile_allowed_repos failed Without having time to investigate further, something changed, likely due to the whole user profile/configurable user model shenanigans done in Django 1.5. For now, simply don't cache this attribute to work around the problem. Signed-off-by:
Dan McGee <dan@archlinux.org>
-
Dan McGee authored
The get_profile() function is deprecated as of Django 1.5. Signed-off-by:
Dan McGee <dan@archlinux.org>
-