<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.postgresql.org/skins/common/feed.css?207"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>PostgreSQL wiki - New pages [en]</title>
		<link>http://wiki.postgresql.org/wiki/Special:NewPages</link>
		<description>From PostgreSQL wiki</description>
		<language>en</language>
		<generator>MediaWiki 1.15.5-2squeeze5</generator>
		<lastBuildDate>Sat, 25 May 2013 19:21:29 GMT</lastBuildDate>
		<item>
			<title>Pgcon2013unconference:testing brainstorming</title>
			<link>http://wiki.postgresql.org/wiki/Pgcon2013unconference:testing_brainstorming</link>
			<guid>http://wiki.postgresql.org/wiki/Pgcon2013unconference:testing_brainstorming</guid>
			<description>&lt;p&gt;Dbs:&amp;#32;/* PostgreSQL testing brainstorming: PGCon2013 unconference notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Build farm - composed of &amp;quot;animals&amp;quot; ==&lt;br /&gt;
&lt;br /&gt;
* Currently run multiple instances per animal; each animal configures which contrib modules it builds (usually based on platform restrictions) but all tests are run&lt;br /&gt;
* No support for machine-to-machine testing at the moment (you can, however, run replication across two local instances)&lt;br /&gt;
* Peter Eisentraut had been doing a lot of work with Jenkins&lt;br /&gt;
&lt;br /&gt;
Question around collecting data on where bugs are being found and fixed to determine a heat map of problem areas; discussion goes sideways about the conscious lack of a bug tracker for the project; possibility of using tagging in the bug emails to enable some level of analytics&lt;br /&gt;
&lt;br /&gt;
Testing of clients (beyond psql); libpq is tested and that's what Python, PHP, Perl, etc generally build on, but there is likely not significant automated testing happening with these clients; however, that's generally considered out of scope for the PostgreSQL project proper&lt;br /&gt;
&lt;br /&gt;
Automated fuzz testing of generated SQL, etc is apparently ongoing but the project only hears about it when they find a problem&lt;br /&gt;
&lt;br /&gt;
== Performance farm ==&lt;br /&gt;
&lt;br /&gt;
* Would like to have overall performance testing (with throughput / stress testing); Mark Wong is already doing this on a biweekly basis with DBT2   (because setup / teardown is hard)&lt;br /&gt;
* Would like to have individual SQL query regression testing to prevent future fiascos like the 9.2 subquery performance regression&lt;br /&gt;
* Only thing that's standing in the way is _time_ to write the performance testing infrastructure; hardware _is_ available (and can be dedicated for   performance purposes to provide consistency)&lt;br /&gt;
* Build farm already has the ability to report basic profiling information, things like iozone would be useful to help filter out weirdness&lt;/div&gt;</description>
			<pubDate>Sat, 25 May 2013 18:29:08 GMT</pubDate>			<dc:creator>Dbs</dc:creator>			<comments>http://wiki.postgresql.org/wiki/Talk:Pgcon2013unconference:testing_brainstorming</comments>		</item>
		<item>
			<title>2013UnconfFakingIt</title>
			<link>http://wiki.postgresql.org/wiki/2013UnconfFakingIt</link>
			<guid>http://wiki.postgresql.org/wiki/2013UnconfFakingIt</guid>
			<description>&lt;p&gt;Jehsom:&amp;#32;Created page with &amp;quot;We discussed creating random data to fill a database that is to be used as an example.  Some useful queries for generating random data:  select random() from generate_series(1,3)…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;We discussed creating random data to fill a database that is to be used as an example.&lt;br /&gt;
&lt;br /&gt;
Some useful queries for generating random data:&lt;br /&gt;
&lt;br /&gt;
select random() from generate_series(1,3); -- Generates random numbers&lt;br /&gt;
select (array[...])[random() * nelems + 1]; -- Selects random elements from an array&lt;br /&gt;
select now() - ‘1 year ago’::interval * random() -- Gives you random dates over the last year&lt;br /&gt;
select uuid_generate_v4(); -- Generates a uuid&lt;br /&gt;
&lt;br /&gt;
To affect a random subset of your rows, update where random() &amp;lt; 0.3 for example&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We then decided it would be useful to have a sample database available for public consumption. There is already one example database available at github.com/pgexperts/librec, but we wanted one that implemented a lot more PostgreSQL features and had lots of random data in it. We could make one that would be used to store data about PGCon.&lt;br /&gt;
&lt;br /&gt;
Demo database needs:&lt;br /&gt;
hstore&lt;br /&gt;
full text search&lt;br /&gt;
range type&lt;br /&gt;
auditing tables&lt;br /&gt;
foreign keys&lt;br /&gt;
views&lt;br /&gt;
roles&lt;br /&gt;
spatial data&lt;br /&gt;
functional indexes&lt;br /&gt;
array&lt;br /&gt;
constraint partitions&lt;br /&gt;
listen/notify&lt;br /&gt;
&lt;br /&gt;
The start of this project is available on github at:&lt;br /&gt;
https://github.com/pvh/postgresql-sample-database&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lastly, we also discussed the desire for an extension for plotting and graphing data visually called e.g. pg_graph. One example function it might provide is something to plot x,y points using ascii art.&lt;/div&gt;</description>
			<pubDate>Sat, 25 May 2013 17:50:29 GMT</pubDate>			<dc:creator>Jehsom</dc:creator>			<comments>http://wiki.postgresql.org/wiki/Talk:2013UnconfFakingIt</comments>		</item>
		<item>
			<title>2013UnconfPluggableStorage</title>
			<link>http://wiki.postgresql.org/wiki/2013UnconfPluggableStorage</link>
			<guid>http://wiki.postgresql.org/wiki/2013UnconfPluggableStorage</guid>
			<description>&lt;p&gt;Aglio:&amp;#32;Created page with &amp;quot;Galy Lee from Huawei talked about their wanting a decoupled storage engine.  They have several needs for special storage engine properties.  They want MySQL-style pluggable stora…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Galy Lee from Huawei talked about their wanting a decoupled storage engine.&lt;br /&gt;
&lt;br /&gt;
They have several needs for special storage engine properties.  They want MySQL-style pluggable storage engines.  They tried to do this themselves in 9.1, but they couldn't do it themselves, because the interface wasn't clean and they couldn't get it to work.&lt;br /&gt;
&lt;br /&gt;
Tom Lane:  the first thing to talk about is why don't FDWs solve it?  Who's going to store the data, asks Peter.  We're abdicating responsibiliy, says Tom.  If we go that route, we're pulling a MySQL.  You could do it for some file-based mechanism where the FDW had complete control.  And what about the FDW overhead?  And what about transactional semantics?&lt;br /&gt;
&lt;br /&gt;
Imagine a database with just FDWs and no native storage?  How would it work?  Peter's use case is the cloud, with horrible storage.  Would PostgreSQL abdicate and just become a query broker?&lt;br /&gt;
&lt;br /&gt;
Josh brought up how to we create and manage FDW tables?  And what about maintenance?  And security or changes to files?&lt;br /&gt;
&lt;br /&gt;
How do you deal with indexes?  FDWs need their own indexes.  But what about GiST and GIN then?&lt;br /&gt;
&lt;br /&gt;
What are we trying to replace with pluggable storage engines?  We have a pluggable interface for the index, but not heap.  Frost brings up lack of parallelism in FDW?  &lt;br /&gt;
&lt;br /&gt;
Porting the DML is hard.  Like we couldn't make triggers work.  &lt;br /&gt;
&lt;br /&gt;
Citus is using FDWs and storing their stuff in Hadoop.  They had to trim a lot of SQL though, and not support it.  Likes the idea of having FDW vs. Native Data Wrappers.   You need more guarantees for a NDW.&lt;br /&gt;
&lt;br /&gt;
Use cases:&lt;br /&gt;
* Column store&lt;br /&gt;
* Telecom in-memory database with own MVCC mechanism and HA.&lt;br /&gt;
* Analytics database&lt;br /&gt;
* Streamining tables&lt;br /&gt;
* fractal index organized tables&lt;br /&gt;
* PostgreSQL on immutable storage&lt;br /&gt;
* in-memory database&lt;br /&gt;
&lt;br /&gt;
Transactional semantics for Huawei database?  Maybe FDW is better for them.  They need special information for the planner.  Need remote JOIN for FDWs.  &lt;br /&gt;
&lt;br /&gt;
For NDW, we need atomic commit.  And index methods.  And do we want each FDW to reinvent the wheel in that area?  The spec is that the FDW is responsible for returning paths.  &lt;br /&gt;
&lt;br /&gt;
Jan gave case of compressed tables, storage engines should be lower level, like page-level. Also gave example of switching his storage to black hole for overloaded table.&lt;br /&gt;
&lt;br /&gt;
Issuses with FDW as SE:&lt;br /&gt;
* transactions -- can't be solved without 2PC&lt;br /&gt;
* indexing -- can't use Postgres indexes&lt;br /&gt;
* performance&lt;br /&gt;
* backup -- would need hooks, flag for backup&lt;br /&gt;
* management -- would need hooks&lt;br /&gt;
* maintenance&lt;br /&gt;
* replication&lt;br /&gt;
* WAL/crash safety -- would require WAL API, replication API&lt;br /&gt;
* data types?  seems easy to resolve&lt;br /&gt;
&lt;br /&gt;
Questions for SE vs. FDW, set of binary choices, which can be any way:&lt;br /&gt;
* do your tuples look like tuples?&lt;br /&gt;
* do your transactions look like transactions?&lt;br /&gt;
* do your pages look like pages?&lt;br /&gt;
* does your indexes look like indexes?&lt;br /&gt;
&lt;br /&gt;
Configuring planning/costs etc. on a per-FT basis is very painful.  It would be better to have defaults by type.  But maybe it is on the server basis.  The wrapper is responsible for providing the costs.&lt;br /&gt;
&lt;br /&gt;
Discussion of replacing COPY with FDWs.&lt;br /&gt;
&lt;br /&gt;
Josh brough up fractal indexes case, with different licensing.&lt;br /&gt;
&lt;br /&gt;
We should have a generic WAL API which allows an extension etc. to create WAL.  The pages would need to look like pages, though.  This limits you to specific types of storage.  &lt;br /&gt;
&lt;br /&gt;
We would also need a logical replication API too so that FDWs could support logical replication.&lt;br /&gt;
&lt;br /&gt;
So, are FDWs suitable or not?&lt;br /&gt;
&lt;br /&gt;
Could use background workers with files for in-memory database.&lt;br /&gt;
&lt;br /&gt;
Much discussion ensued regarding FDW vs Native storage.&lt;br /&gt;
&lt;br /&gt;
We need an API.  FDW won't work for too many cases.&lt;/div&gt;</description>
			<pubDate>Sat, 25 May 2013 15:58:23 GMT</pubDate>			<dc:creator>Aglio</dc:creator>			<comments>http://wiki.postgresql.org/wiki/Talk:2013UnconfPluggableStorage</comments>		</item>
		<item>
			<title>Oscon 2013 signup</title>
			<link>http://wiki.postgresql.org/wiki/Oscon_2013_signup</link>
			<guid>http://wiki.postgresql.org/wiki/Oscon_2013_signup</guid>
			<description>&lt;p&gt;Markwkm:&amp;#32;fix a date&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Time slots are intended to allow people to have enough time to go to a session before it starts and to come to the booth after a session ends for people attending the conference.&lt;br /&gt;
* Please send t-shirt sizes and whether you prefer men's or women's cut to markwkm at postgresql.org.  We will try to get t-shirts for all booth volunteers.&lt;br /&gt;
&lt;br /&gt;
== Tue July 23 (17:00-18:00) (5pm - 6pm) - Opening Reception ==&lt;br /&gt;
* Mark Wong (markwkm at postgresql.org)&lt;br /&gt;
&lt;br /&gt;
== Wed July 24 (10:00-16:30) (10am-4:40pm) ==&lt;br /&gt;
&lt;br /&gt;
=== 10:00 - 11:15 ===&lt;br /&gt;
* &lt;br /&gt;
* &lt;br /&gt;
&lt;br /&gt;
=== 11:15 - 12:50 LUNCH ===&lt;br /&gt;
*&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== 12:50 - 14:25 LUNCH ===&lt;br /&gt;
*&lt;br /&gt;
* &lt;br /&gt;
&lt;br /&gt;
=== 14:25 - 15:15 ===&lt;br /&gt;
* &lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== 15:15 - 16:40 ===&lt;br /&gt;
*&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
== Thurs July 25 10:00 - 17:00 (10am-5pm) ==&lt;br /&gt;
&lt;br /&gt;
=== 10:00 - 11:25 ===&lt;br /&gt;
* &lt;br /&gt;
* &lt;br /&gt;
&lt;br /&gt;
=== 11:25 - 12:50 LUNCH ===&lt;br /&gt;
*&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== 12:50 - 14:25 LUNCH ===&lt;br /&gt;
*&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== 14:25 - 16:00 ===&lt;br /&gt;
*&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== 16:00 - 17:00 ===&lt;br /&gt;
*&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Thanks for participating!&lt;br /&gt;
&lt;br /&gt;
[[Category:PostgreSQL Events]]&lt;/div&gt;</description>
			<pubDate>Sat, 18 May 2013 00:25:21 GMT</pubDate>			<dc:creator>Markwkm</dc:creator>			<comments>http://wiki.postgresql.org/wiki/Talk:Oscon_2013_signup</comments>		</item>
	</channel>
</rss>