Failed To Insert Data Into Tables Using Postgres-XL and 4 Datanode
Finally, I found it as my mistake because I am still affected by ordinary PostgreSQL (9.4) behaviour. After I added ::INTEGER and LIMIT 1000000 in the DML below, the data insertion is a success.

...
temp2 AS (
  SELECT 
    *, round(random()*1000)::INTEGER AS receipt_amount,
  random()*1000 AS non_promo, random()*1000 AS promo_rep, random()*1000 AS promo_avp
  FROM temp
),
...

  ORDER BY 1,2,4
)
INSERT INTO sales_small_cat
SELECT * FROM finale LIMIT 1000000;


Frankly, I am still confused. Why does Postgres-XL need the LIMIT clause?