Pavel
груповыми политиками . гвонософтом. и еще 100 и способом
Hog
:))))
Shub
ситуация была элементарная: я клонировал чужой репозиторий, собрал, решил удалить.
Shub
каким образом тут могут быть задействованы групповые политики?
Hog
это просто создание комфортной среды для себя любимого
Pavel
я вот седня матом каспера крыл
Hog
Pavel
это говно перехватывает http трафик внутри локального компа и роняет rps в 10 раз
Hog
Shub
в жизни должен быть надрыв. как говорится “сытые шедевров не создают"
Pavel
Pavel
и тупые админы которые толком ниче нстроить правильно не могут
Shub
ну я вообще-то высказался на эту тему еще вчера. не думаю, что сегодня могу сообщить что-то новое.
Hog
Shub
главное, что одна проблема решилась. еще одна маленькая победа над энтропией
Shub
лучшие произведение - в Кишиневе, когда он там боролся с саранчой
Shub
прям давил ее штиблетами и бил тростью
Hog
боролся за то, чтобы быть сытым что ли?
Shub
стыдно не знать
Hog
ну это не значит, что он не был сытым
Hog
мне кажется он был обеспеченным
Hog
нет?
Hog
Hog
надо только удалёнку найти
Shub
напомню, что практически до времен советского союза та местность считалась непригодной для жизни. туда например ссылали старообрядцев в надежде, что они там передохнут за 2-3 года
Hog
его и в Самару могли сослать
Hog
тоже малопригодное для жизни место
Romɑn
Romɑn
Мак?
Такая к фигня на маке
x
К нам сегодня такой перец приходил https://kyky.org/cult/kak-rabotnik-psihonevrologicheskogo-dispansera-stal-rezhisserom-v-teatre-i-prodal-svoyu-muzyku-nemetskomu-leyblu
x
Крутой!
Nikolay
Shub
rejoice bretheren!
Shub
https://github.com/Microsoft/calculator
Nikolay
Тут вопрос такой. Как в IQueryable сделать такое:
Func<User, string> identifier = x => x.id;
users.Where(x => ids.Any(id => identifier(x));
Таким образом он не хочет работать, вот мб как-то передать Expression<Func>?
Nikolay
@fvnever ты у нас в экспрешнах шаришь
Éminence grise
Братья комбинаторы, а как насчет нормального Type Provider на всех написать?
Éminence grise
Я не могу вкинуть fsharp везде из за этого
Hog
Éminence grise
А одному не потянуть
Hog
@omgszer написал, что там только bulk insert нету
Hog
я попробовал linq2db для энтого
Éminence grise
Нет. там провайдер, а не DSL. Сравнивать с LINQ2D, это как в небо стрелять
Hog
Там - это где?
Hog
а какой DSL нужен? query CE там есть - всё ок
Éminence grise
Там это в SQLProvider
Hog
завел вот давеча Постгрес - и в дизайн-тайме, и в FSI, и в собранном приложении - всё вполне себе работает
Éminence grise
Полный. Его Спокойно можно сделать. C OVER BY и CTE.
Hog
ээээ.... мммм... я что-то недопонял
Éminence grise
Ага. Герш, покажи код если можно. Уменя не получается в продакшен базе сколько нибудь внятный код уровня доступа к БД.
Hog
type TC = SqlDataProvider< DbVendor, ConnString, UseOptionTypes=true, TableNames=TableNames >
let getContext (config: TfConfig) =
#if DEBUG
Common.QueryEvents.SqlQueryEvent |> Event.add (fun e -> Logger.Debug("Executing SQL {@sql}", e))
TC.GetDataContext()
#else
TC.GetDataContext(config.ServerFiles.omssql)
#endif
Éminence grise
CTE - common table expression. OVER - оконные функции
Hog
это к MS SQL, но я не вижу почему оно не будет работать для постгреса
Hog
let custPortFields fld =
query {
for p in ctx.Dbo.TcPrtExt do
where (p.PrtCategory = fld)
select (p.PrtName, p.PrtValue)
} |> List.ofSeq
let sec =
query {
for s in ctx.Dbo.TrSec do
select (s.SecSym, s.BloombergId)
} |> List.ofSeq
Éminence grise
Запросы, Герш, запросы. Я тут запросов не увидел 😊
Hog
нсли тебе нужны ЗАПРОСЫ - пиши raw SQL
Hog
:)
Hog
или в хранимки
Vasiliy
хранимки зло
Vasiliy
на сколько должны быть БОЛЬШИЕ запросы?
Hog
Éminence grise
А так:
Éminence grise
var workTimes = userId.Match(
guid =>
from wtt in db.EmployeeWorkTime(fromDate, period)
join eu in db.Clinic.EmployeeUsers on wtt.DoctorId equals eu.UserId
where eu.EmployeeId == guid
select new ScheduleQueryData { WorkTime = wtt},
id =>
from wtt in db.EmployeeWorkTime(fromDate, period)
where wtt.DoctorId == id
select new ScheduleQueryData { WorkTime = wtt });
var reserves = userId.Match(
guid =>
from rr in db.TimeReservations
join eu in db.Clinic.EmployeeUsers on rr.DoctorId equals eu.UserId
where eu.EmployeeId == guid && rr.Kind != 3 && fromDate < rr.EndTime &&
toDate > rr.StartTime
select new ScheduleQueryData { Reservation = rr },
id =>
from rr in db.TimeReservations
where rr.DoctorId == id && rr.Kind != 3 && fromDate < rr.EndTime &&
toDate > rr.StartTime
select new ScheduleQueryData { Reservation = rr });
var appointments =
userId.Match(
guid =>
from app in db.Appointments
join eu in db.Clinic.EmployeeUsers on app.DoctorId equals eu.UserId
join pres in db.Prescriptions on app.Id equals pres.AppointmentId
where eu.EmployeeId == guid && fromDate < app.EndTime && toDate > app.Time
select new ScheduleQueryData
{
Appointment = app,
Prescription = pres,
Patient = pres.Patient,
Service = pres.Service,
WorkTime = null,
Reservation = null,
},
id =>
from app in db.Appointments
join pres in db.Prescriptions on app.Id equals pres.AppointmentId
where app.DoctorId == id && fromDate < app.EndTime && toDate > app.Time
select new ScheduleQueryData
{
Appointment = app,
Prescription = pres,
Patient = pres.Patient,
Service = pres.Service,
WorkTime = null,
Reservation = null,
});
Éminence grise
Это простые
Hog
да я быстрее на клинте соберу результат, чем это выполнится :)
Éminence grise
Меньше 50мс yна 280Гб базе
Éminence grise
Вы зря недооцениваете мощь SQL
Hog
ну ок :) похвастался :)
Hog
я уретрировал
Vasiliy
а что за Match?
Éminence grise
Не, у меня тут хвост, со старых разрабов. Они
считали ЧТО НА КЛИЕНТЕ БЫСТРЕЕ. ТОЛЬКО У МЕНЯ СЕРВЕР БЕГАЕТ БЕЗ ОСОБОЙ ОПТИМИЗАЦИИ В 40000 РАЗ БЫСТРЕЕ
Hog