Project

pg_jruby

0.06
No commit activity in last 3 years
No release in over 3 years
This is a native implementation of the Postsgres protocol written entirely in Java. The project was started by @headius as a ruby-pg replacement for JRuby that uses the JDBC driver and private API of Postgres. Unfortunately ruby-pg (which uses libpq under the hood) exposed a lot of features of Postgres that were impossible to implement or were complicated given the nature of the JDBC and the encapsulation of many features that are exposed in ruby-pg. *WARNING* this gem is not production ready yet. There are many bugs that needs to be fixed and more testing. So please checkout the code and submit pull requests with some fixes. If your Java-Fu isn't that great you can still contribute by submitting test cases and We'll be happy to fix them.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

>= 0
~> 3.1
>= 0
>= 0.9
~> 3.10
>= 0
 Project Readme

pg¶ ↑

This is a JRuby gem replacement for ruby-pg. The gem should be a drop-in replacement for ruby-pg version 0.17.1. If you see any inconsistency please open an issue here.

Another JRuby Postgres adapter is jdbc-postgres. jruby-pg provides a few interfaces that jdbc-postgres doesn’t have. Most use cases don’t require those interfaces, specially if you are using ActiveRecord. Extra APIs in the pg & jruby-pg gem include:

  • Async API for querying

  • Large objects API

  • Bulk Copy API

  • Notification API

Documentation¶ ↑

For documentation please refair to the MRI pg gem docs which you can find here. The original ruby-pg project can be found here on github.

Build Status¶ ↑

<img src=“https://travis-ci.org/ged/ruby-pg.png?branch=master” alt=“Build Status” />

Requirements¶ ↑

The gem has been tested with the following:

  • JRuby 1.7.18

  • PostgreSQL 9.3.6

It may work with earlier versions of Ruby/PostgreSQL as well, but those are not regularly tested.

How To Install¶ ↑

NOTE: if you are installing jruby-pg to use it with rails you’ll have to install it using bundler.

Install via RubyGems:

gem install pg_jruby

Install via Bundler, in your gemfile add the following:

# Please note that Bundler version 1.0 is necessary to let bundler do its dependency management,
# as there is no .gemspec in the source.
gem 'pg', '0.17.1', :platform => :jruby, :git => 'git://github.com/headius/jruby-pg.git', :branch => :master

# comment the activerecord-jdbcsqlite3-adapter line
# gem 'activerecord-jdbcsqlite3-adapter'

Sample app¶ ↑

See this app for a demonstration of using jruby-pg with rails

Copying¶ ↑

Copyright © 1997-2013 by the authors.

MRI contributors¶ ↑

  • Jeff Davis <ruby-pg@j-davis.com>

  • Guy Decoux (ts) <decoux@moulon.inra.fr>

  • Michael Granger <ged@FaerieMUD.org>

  • Lars Kanis <lars@greiz-reinsdorf.de>

  • Dave Lee

  • Eiji Matsumoto <usagi@ruby.club.or.jp>

  • Yukihiro Matsumoto <matz@ruby-lang.org>

  • Noboru Saitou <noborus@netlab.jp>

JRuby contributors¶ ↑

  • John Shahid <jvshahid@gmail.com>

You may redistribute this software under the same terms as Ruby itself; see www.ruby-lang.org/en/LICENSE.txt or the LICENSE file in the source for details.

Portions of the code are from the PostgreSQL project, and are distributed under the terms of the PostgreSQL license, included in the file POSTGRES.

Portions copyright LAIKA, Inc.

Acknowledgments¶ ↑

See Contributors.rdoc for the many additional fine people that have contributed to this library over the years.

We are thankful to the people at the ruby-list and ruby-dev mailing lists. And to the people who developed PostgreSQL.