Connect to X11 Server Through ssh Using Cygwin/X on Windows

Assuming the server is setup correctly. Look at this question on StackExchange if you need help.

On the client (Windows machine) side:
  1. Install Cygwin[1] and Cygwin/X[2]
  2. Set $DISPLAY variable in your startup script (I put it in ~/.bashrc)
    # Add DISPLAY for X11 forwarding
    export DISPLAY=":0.0"
  3. Start a Cygwin Terminal and
    1. Start X Server
      startxwin &
    2. Connect to your server
      # -Y      Enables trusted X11 forwarding.
      ssh -Y ${server_to_connect}
    3. Now you can run the application on the server and the GUI will be shown in your Windows machine. You can test by xlog

Git Stash in Egit

Just found you can do "git stash" in Egit

It's 'hidden in the "Git Repository view": '

Image found from the above stackoverflow link.

How to fetch all tags from Git Server using EGit?

You will need to follow the same procedure for all the project that you have.
  1. Right-click on a project ⇒ Click on "Team" ⇒ Click on "Fetch from Upstream"

  2. Click on "Configure"

  3. Click on "Advanced"

  4. Click on "Always fetch tags, even if we do not have the thing it points at"

Change The Location of PostgreSQL Database Store Its Table and Index

Find a way to split the postgres database into different partitions.
Two main use case [1]
  1. First, if the partition or volume on which the cluster was initialized runs out of space and cannot be extended, a tablespace can be created on a different partition and used until the system can be reconfigured.
  2. Second, tablespaces allow an administrator to use knowledge of the usage pattern of database objects to optimize performance. For example, an index which is very heavily used can be placed on a very fast, highly available disk, such as an expensive solid state device. At the same time a table storing archived data which is rarely used or not performance critical could be stored on a less expensive, slower disk system.

To Create a Tablespace

CREATE TABLESPACE fastspace LOCATION '/mnt/sda1/postgresql/data';

To Change the Tablespace of an Existing Table and Index

The following psql command will create a list of alternate table command to change the table's tablespace [2]
-- tabelspace is null - find table that doesn't have any tablespace set
select 'alter table '||schemaname||'.'||tablename||' set tablespace fastspace;' from pg_tables where schemaname='myschema' and tablespace is null;
select 'alter index '||schemaname||'.'||indexname||' set tablespace fastspace;' from pg_indexes where schemaname='myschema' and tablespace is null;

It will return something similar to this
 alter table myschema.table1 set tablespace fastspace;
 alter table myschema.table2 set tablespace fastspace;
 alter table myschema.table3 set tablespace fastspace;
(3 rows)
 alter index 
myschema.index1 set tablespace fastspace;
 alter index 
myschema.index2 set tablespace fastspace;
 alter index 
myschema.index2 set tablespace fastspace;
(3 rows)
 Then just run each generated command to change/set the tablespace.