673eac7b42 
					 
					
						
						
							
							Change 'have_error' to 'ret' for simplicity.  
						
						
						
						
					 
					
						2013-06-22 08:59:47 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d79d342eea 
					 
					
						
						
							
							Add advisory locking to repack_one_table()  
						
						... 
						
						
						
						Avoids danger (or just pointlessness) of having someone run a
table-wide repack and an indexes-only repack of the same table
at the same time. 
						
						
					 
					
						2013-06-22 08:41:41 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						62b5e4fb11 
					 
					
						
						
							
							A few cosmetic fixes to pg_repack.c:  
						
						... 
						
						
						
						* fix old reference to --indexes-only
 * trailing whitespace and indentation cleanup to match rest of code
 * XXX note about improving advisory locking 
						
						
					 
					
						2013-06-22 06:51:41 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b804c150ac 
					 
					
						
						
							
							Fix existing 'tablespace' regression test so it passes again.  
						
						... 
						
						
						
						Changes to repack_indexdef() had broken this test. 
						
						
					 
					
						2013-06-22 06:47:06 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f3fa2fa563 
					 
					
						
						
							
							Fixes and cleanup of the new repack_index_swap():  
						
						... 
						
						
						
						* Make sure we don't crash if this function is fed a bogus OID
 * rename idx1, idx2 variables for clarity
 * tweak query against pg_class to specify reltype = 0
 * CommandCounterIncrement() is probably unnecessary, removed 
						
						
					 
					
						2013-06-21 20:58:54 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ee23ec8ffd 
					 
					
						
						
							
							Initial import of indexes-only building patch.  
						
						... 
						
						
						
						Patch from Beena Emerson. 
						
						
					 
					
						2013-06-21 18:41:09 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5b6a162996 
					 
					
						
						
							
							Shuffle sanity checks into preliminary_checks().  
						
						... 
						
						
						
						This refactoring helps pave the way for online indexes-only
repacking. Patch by Beena Emerson. 
						
						
					 
					
						2013-06-20 21:11:25 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a942042215 
					 
					
						
						
							
							Fix up the --help output for --jobs.  
						
						
						
						
					 
					
						2013-06-18 19:45:05 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						29023206b5 
					 
					
						
						
							
							Fix lock_exclusive()'s behavior during swap step.  
						
						... 
						
						
						
						Since we are not starting a new transaction in conn2 during the
swap step, we need to make sure that if our LOCK query is canceled
due to statement_timeout that conn2's transaction is not left in
a useless error state. Use SAVEPOINT and ROLLBACK TO SAVEPOINT to
avoid this problem. 
						
						
					 
					
						2013-06-16 20:17:24 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9c8d519415 
					 
					
						
						
							
							Kludge to remove -lpam from LIBS in Makefiles.  
						
						... 
						
						
						
						Per Issue #7  from armanddp, it seems the RHEL/CentOS packages
of Postgres are built against libpam, which shows up in
the LIBS reported by pg_config. We don't actually need to
link in libpam for pg_repack, so manually remove it from
our LIBS. This helps a little bit for building on
RHEL/CentOS, though the issue of libpgport.a missing
on that platform still looms. 
						
						
					 
					
						2013-05-23 20:31:56 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						95ce24c2a0 
					 
					
						
						
							
							More sed tweaks to Makefile for portability.  
						
						... 
						
						
						
						The -E flag to specify extended regular expressions apparently is
not portable to all platforms, such as CentOS 4.5. Use an uglier
but hopefully more portable basic regular expression in Makefiles. 
						
						
					 
					
						2013-05-21 21:45:47 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						dc31920616 
					 
					
						
						
							
							Move regression tests from ./bin/ to ./regress/  
						
						
						
						
					 
					
						2013-05-09 21:15:48 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						20dea46184 
					 
					
						
						
							
							Merge remote-tracking branch 'piro/master'  
						
						
						
						
					 
					
						2013-05-05 00:19:22 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						98d304712c 
					 
					
						
						
							
							Merge branch 'funky-version-check'  
						
						... 
						
						
						
						Conflicts:
	bin/expected/repack.out
	bin/sql/repack.sql 
						
						
					 
					
						2013-05-05 00:09:39 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a561c924f7 
					 
					
						
						
							
							Parse tablespace/where in parse_indexdef  
						
						... 
						
						
						
						Makes injecting the target tablespace much easier and fixes interaction
between tablespace and WITH/WHERE clauses.
Added tests to check the correct indexes definition. 
						
						
					 
					
						2013-05-05 00:07:14 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						2b7e1b2f0c 
					 
					
						
						
							
							Ignore regression tests output  
						
						
						
						
					 
					
						2013-05-04 13:31:11 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cc2abf4b25 
					 
					
						
						
							
							Fixed tablespace assignment in index with WITH clause  
						
						... 
						
						
						
						Reported by Beena Emerson. 
						
						
					 
					
						2013-05-02 23:32:30 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c55c613e44 
					 
					
						
						
							
							Update RENAME_REL macro to work with 9.3. We now need to pass the  
						
						... 
						
						
						
						"is_internal" boolean to this function; for our purposes it should
be acceptable to always pass true. 
						
						
					 
					
						2013-04-23 21:32:30 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f886e0dba6 
					 
					
						
						
							
							Fixed --order-by broken by namespaces refactoring  
						
						... 
						
						
						
						Also added a regression test for it.
Bug and patch from Beena Emerson, thany you. 
						
						
					 
					
						2013-04-22 11:19:56 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						109689586e 
					 
					
						
						
							
							Fixed access to uninit'd mem in repack_indexdef  
						
						... 
						
						
						
						If the tablespace is the last token in the indexdef, skip_ident returns a
pointer *after* the term zero, so garbage may end up after the statement. 
						
						
					 
					
						2013-04-22 00:48:53 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						52e7761343 
					 
					
						
						
							
							Fixed doc formatting and dropped stale diagnostics entries  
						
						
						
						
					 
					
						2013-04-18 02:49:56 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						fb07fad34a 
					 
					
						
						
							
							Make sure to close the transactions after repack_one_table  
						
						... 
						
						
						
						If we exit early (e.g. checking the triggers) repack_cleanup() is not called
but we must close the transactions anyway. 
						
						
					 
					
						2013-04-18 02:29:51 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						54ba3c19cd 
					 
					
						
						
							
							Install plpgsql on test databases 8.3 and 8.4  
						
						... 
						
						
						
						Required by triggers tests 
						
						
					 
					
						2013-04-18 01:32:46 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a2138b6d7d 
					 
					
						
						
							
							Ignore AFTER triggers sorting after z_repack_trigger  
						
						... 
						
						
						
						They are not a problem, and they fore after the BEFORE trigger anyway.
To be checked against more PostgreSQL versions. 
						
						
					 
					
						2013-04-18 01:22:24 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						477fba884c 
					 
					
						
						
							
							Ignore AFTER triggers sorting after z_repack_trigger  
						
						... 
						
						
						
						They are not a problem, and they fore after the BEFORE trigger anyway.
To be checked against more PostgreSQL versions. 
						
						
					 
					
						2013-04-18 01:19:52 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						14c4d4653e 
					 
					
						
						
							
							Make the version number arith without using bc  
						
						... 
						
						
						
						Not as available as I thought.
Can't use the 0 prefix to make the 3rd number optional as $(()) parses is as
octal, so only use the first 2 numbers.
Also fixed collate test: not available on PG 9.0. 
						
						
					 
					
						2013-04-18 01:10:22 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						dd06f25930 
					 
					
						
						
							
							Tests on COLLATE only run on PG versions supporting it  
						
						
						
						
					 
					
						2013-04-18 00:34:44 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c314cbda75 
					 
					
						
						
							
							Check PostgreSQL version number as number in the makefile  
						
						... 
						
						
						
						Not entirely happy about the solution but I like the uniform tests. 
						
						
					 
					
						2013-04-18 00:29:23 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						22762fce28 
					 
					
						
						
							
							Fixed query for PG 8.3  
						
						... 
						
						
						
						The AS keyword was required. 
						
						
					 
					
						2013-04-17 22:08:37 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						db40e71abc 
					 
					
						
						
							
							Fixed query for PG 8.4  
						
						... 
						
						
						
						Posgtres cannot find a cast rule. 
						
						
					 
					
						2013-04-17 22:08:24 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3d0b02c654 
					 
					
						
						
							
							Try to repack all tables with pkey, not only the ones with ckey  
						
						... 
						
						
						
						This is consistent with --no-order not been required anymore. 
						
						
					 
					
						2013-04-17 18:56:50 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b3304b8a69 
					 
					
						
						
							
							Merge branch 'logging-cleanup'  
						
						
						
						
					 
					
						2013-04-17 18:36:23 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						08a8c943e5 
					 
					
						
						
							
							Logging the table we are working on at info level  
						
						
						
						
					 
					
						2013-04-17 18:35:54 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5773c75b58 
					 
					
						
						
							
							Using elog instead of printf to report what database we are on  
						
						... 
						
						
						
						I know the ... is pretty but it messes up with warnings etc. By the way there
was a \n so the skipped part wasn't even going on the same line. 
						
						
					 
					
						2013-04-17 18:35:49 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4a3f42ab70 
					 
					
						
						
							
							Dropped unneeded error check  
						
						... 
						
						
						
						if pgut_execute fails it bails out. 
						
						
					 
					
						2013-04-17 18:11:34 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						2335a4da82 
					 
					
						
						
							
							Dropped redundant check for missing schema  
						
						... 
						
						
						
						If the schema is missing we have already stopped trying to check
the version numbers above. 
						
						
					 
					
						2013-04-17 18:11:34 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						700a1a6c48 
					 
					
						
						
							
							More explicit error message if the version functions are not found  
						
						
						
						
					 
					
						2013-04-17 18:11:33 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0e74882429 
					 
					
						
						
							
							Had to shorten the tablespace metavar  
						
						... 
						
						
						
						In the rst docs two spaces are required between option and doc. 
						
						
					 
					
						2013-04-17 09:17:35 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						42c65d16f8 
					 
					
						
						
							
							Merge branch 'change-tablespace'  
						
						... 
						
						
						
						Conflicts:
	bin/pg_repack.c
	doc/pg_repack.rst 
						
						
					 
					
						2013-04-17 09:07:09 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7617e07f10 
					 
					
						
						
							
							Options sorted in a slightly more rational order  
						
						... 
						
						
						
						--no-order now is almost useless, but list it next to --order-by.
--jobs only specifies how to do something, not what to do. On the
same basis probably --no-analyze should be pushed further up. 
						
						
					 
					
						2013-04-17 01:44:50 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						8efbd9e1c6 
					 
					
						
						
							
							Imply --no-order for non-clustered tables  
						
						... 
						
						
						
						--no-order can still be specified to VACUUM FULL a clustered tables
(not so useful I guess...)
Fixes issue #6 . 
						
						
					 
					
						2013-04-17 01:42:22 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1d62d8d0c5 
					 
					
						
						
							
							More helpful error messages in case of conflicting triggers  
						
						... 
						
						
						
						Closes issue #5 . 
						
						
					 
					
						2013-04-17 00:57:01 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						127d5cbfb2 
					 
					
						
						
							
							Added missing entries to the pg_repack 1.2 changes  
						
						
						
						
					 
					
						2013-04-16 23:50:52 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b6bd078e92 
					 
					
						
						
							
							Added documentation for --tablespace and --moveidx  
						
						
						
						
					 
					
						2013-04-16 23:39:51 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d98a14bb55 
					 
					
						
						
							
							Fixed index definition tokenization  
						
						... 
						
						
						
						In the previous commit skip_const was going ahead the space thus removing the
starting quote. Also fixed (and tested) trailing part after the tablespace
name, e.g. the WHERE clause. 
						
						
					 
					
						2013-04-16 23:23:26 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						83fdb2a9e0 
					 
					
						
						
							
							Added implementation for --moveidx  
						
						... 
						
						
						
						Note: if original namespace is "foo bar", repack_indexdef gives a bad
result. This is weird as apparently skip_ident can deal with spaces in
a quoted identifier. Committing as I'm going home, will deal with that
later. 
						
						
					 
					
						2013-04-16 22:42:23 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						43dfe229c9 
					 
					
						
						
							
							Added check for target tablespace existence  
						
						
						
						
					 
					
						2013-04-16 22:42:23 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a6e50515ce 
					 
					
						
						
							
							Merge branch 'master' into change-tablespace  
						
						
						
						
					 
					
						2013-04-16 22:40:43 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e9339f44ea 
					 
					
						
						
							
							Merge branch 'issue-3'  
						
						... 
						
						
						
						Conflicts:
	bin/expected/repack.out
	bin/sql/repack.sql 
						
						
					 
					
						2013-04-16 22:36:40 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c542bf2641 
					 
					
						
						
							
							Added tests for the namespace change feature  
						
						... 
						
						
						
						Currently not passing as --moveidx not implemented yet. 
						
						
					 
					
						2013-04-16 18:33:45 +01:00