Skip to content

Instantly share code, notes, and snippets.

View germanow's full-sized avatar
:octocat:

Ivan Hermanov germanow

:octocat:
View GitHub Profile
@germanow
germanow / MessageController.php
Created December 21, 2017 09:53
socket.io + redis + laravel
<?php
namespace App\Http\Controllers;
use App\Message;
use App\Events\MessageSent;
use Illuminate\Http\Request;
use App\Http\Requests;
class MessagesController extends Controller
@germanow
germanow / 2018_01_15_183645_create_role_table.php
Created February 23, 2018 17:53
Laravel role implementation
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateRoleTable extends Migration
{
/**
* Run the migrations.
WITH RECURSIVE
r_back AS (
SELECT fw.id, fw."previousWorkId"
FROM "FieldWork" AS fw
WHERE fw.id = 640
UNION ALL
SELECT fw.id, fw."previousWorkId"
FROM "FieldWork" as fw
@germanow
germanow / phpmd_config.xml
Created September 2, 2019 12:48
Config for PHP Mess Detector
<?xml version="1.0"?>
<ruleset name="My first PHPMD rule set"
xmlns="http://pmd.sf.net/ruleset/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0
http://pmd.sf.net/ruleset_xml_schema.xsd"
xsi:noNamespaceSchemaLocation="
http://pmd.sf.net/ruleset_xml_schema.xsd">
<description>
My custom rule set that checks my code...
@germanow
germanow / process_info.sh
Last active September 25, 2019 07:17
Process info
ps -o pid,ppid,lstart,cmd <pid>
{"version":1,"resource":"file:///home/ivan/gfm/analyzer/test/services/report_service/metrics_calculator_test.exs","entries":[{"id":"pWKJ.exs","timestamp":1649672138023},{"id":"gIJ9.exs","timestamp":1649672156795},{"id":"OPH5.exs","timestamp":1649672190703}]}
@germanow
germanow / long_runnig_query.sql
Created February 7, 2020 12:50
Finding and killing long running queries on PostgreSQL
SELECT
pid,
now() - pg_stat_activity.query_start AS duration,
query,
state
FROM pg_stat_activity
WHERE (now() - pg_stat_activity.query_start) > interval '5 minutes';
SELECT pg_cancel_backend(__pid__);
tar -xOzf dump.tar.gz | PGPASSWORD=secret psql --host=127.0.0.1 --username=default dbname
@germanow
germanow / show_table_size.sql
Created March 24, 2020 12:23
How to show table sizes
SELECT nspname || '.' || relname AS "relation",
pg_size_pretty(pg_total_relation_size(C.oid)) AS "total_size"
FROM pg_class C
LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
WHERE nspname NOT IN ('pg_catalog', 'information_schema')
AND C.relkind <> 'i'
AND nspname !~ '^pg_toast'
ORDER BY pg_total_relation_size(C.oid) DESC
LIMIT 10;
@germanow
germanow / duplicate_db.sql
Created June 8, 2020 07:34
Duplicate database in postgresql
-- To disconnect all other users from the database, you can use this query:
SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity
WHERE pg_stat_activity.datname = 'originaldb' AND pid <> pg_backend_pid();
CREATE DATABASE newdb WITH TEMPLATE originaldb OWNER dbuser;