#!/bin/bash
# Generate some test certificates which are used by the regression test suite:
#
# tests/tls/ca.{crt,key} Self signed CA certificate.
# tests/tls/redis.{crt,key} A certificate with no key usage/policy restrictions.
# tests/tls/client.{crt,key} A certificate restricted for SSL client usage.
# tests/tls/server.{crt,key} A certificate restricted for SSL server usage.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Subscribe to any acount changes to Pyth SOL/USDC account (H6AR...QJEG): | |
This requires websocat - `brew install websocat` | |
```bash | |
echo '{"id":1,"jsonrpc":"2.0","method":"accountSubscribe","params":["H6ARHf6YXhGYeQfUzQNGk6rDNnLBQKrenN712K4AQJEG",{"encoding": "jsonParsed"}]}' | websocat --no-close "wss://internal.ny.mainnet.rpc.jito.wtf/?access-token=XYZ" | |
``` | |
Output | |
``` | |
{"jsonrpc":"2.0","method":"accountNotification","params":{"result":{"context":{"slot":240142003},"value":{"lamports":23942400,"data":["1MOyoQIAAAADAAAA8AwAAAEAAAD4////GgAAABcAAAC0RlAOAAAAALNGUA4AAAAAGAudTAIAAAB/ZvSRAAAAAJ08zJMAAAAAFUKKAAAAAAAc++qFAAAAAJ08zJMAAAAAUNSYZQAAAAADAAAAAAAAAIqwPP8YRKuXXc3RaDAgwFmfxTkrby4S1d1hW8wsLm0IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACzRlAOAAAAAHT4GUsCAAAA6daTAAAAAABP1JhlAAAAAHT4GUsCAAAA6C6NAAAAAAABAAAAAAAAALRGUA4AAAAAB/LLOf2wKdxReE0o7xeRHZfBppyFcjobYlWzQlNDrXUNzhRLAgAAAKBnWgMAAAAAAQAAAAAAAACeRlAOAAAAAA3OFEsCAAAAoGdaAwAAAAABAAAAAAAAAJ5GUA4AAAAAnz6le9QJugDEDZKuVxNBwn48L37frOHCSlGxoVwxsregsyJLAgAAAAJjkgMAAAAAAQAAA |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
local keys = redis.call('KEYS', ARGV[1]); | |
if next(keys) == nil then return keys end; | |
local chunk_size = 4096; -- must be under 8k, see https://github.com/nhibernate/NHibernate-Caches/issues/62 | |
local n = #keys; | |
local out = {}; | |
for i=1,n,chunk_size do | |
local unpack_start = i; | |
local unpack_end = math.min(n, i + chunk_size - 1); | |
local vals = redis.call('MGET', unpack(keys, unpack_start, unpack_end)); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React, {ErrorInfo} from 'react'; | |
export default class ErrorBoundary extends React.Component<{}, { hasError: boolean }> { | |
constructor(props: {}) { | |
super(props); | |
this.state = {hasError: false}; | |
} | |
static getDerivedStateFromError(error: Error) { // Update state so the next render will show the fallback UI. | |
return {hasError: true}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use std::thread::sleep; | |
use std::time::{Duration, Instant}; | |
use redis::{AsyncCommands, ConnectionLike, RedisResult}; | |
use tokio::time::timeout; | |
use futures::StreamExt; | |
use futures_util::Stream; | |
/* Cargo.toml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cat file.csv | sqlite3 demo.db ".import --csv '|cat -' mytable"; sqlite3 demo.db |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* results on 24 threads, Linux, Ryzen 5900X, 64GB RAM, rust 1.66 release mode | |
mutex st: 3.504602ms | |
mutex mt 24 threads: 966.566131ms | |
rwlock st: 4.115984ms | |
rwlock mt 24 threads: 1.639819526s | |
parking_lot st: 4.255349ms | |
parking_lot mt 24 threads: 1.336455132s | |
try channel st: 18.446771ms | |
try channel mt 24 threads: 3.152402156s | |
new channel st: 45.410769ms |
import "array"
array.from(rows: [
{_time: 2021-01-01T00:00:00Z, _value: "foo"},
{_time: 2020-01-02T00:00:00Z, _value: "bar"}
])
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use rustls; | |
let roots = rustls::RootCertStore::empty(); | |
let mut tls = rustls::ClientConfig::builder() | |
.with_safe_defaults() | |
.with_root_certificates(roots) | |
.with_no_client_auth(); | |
tls.key_log = Arc::new(rustls::KeyLogFile::new()); | |
let client = Arc::new( |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/sbin/nft -f | |
# see https://unix.stackexchange.com/questions/740061/how-do-you-duplicate-all-udp-traffic-on-a-port-range-using-nftables/ | |
# sends all duplicated packets to 10.0.0.1 | |
# run this before applying this file | |
# sudo ip addr add 10.0.0.1/24 dev lo | |
# clean up with | |
# sudo ip addr delete 10.0.0.1/24 dev lo |
NewerOlder